エアフローに新しいDAGを展開するために従うべきベストプラクティスはありますか?
Googleフォーラムで、DAGはGITリポジトリ内に保存され、エアフロークラスター内のローカルの場所に定期的に同期されるというコメントをいくつか見ました。
このアプローチに関して、いくつか質問がありました
ここで助けていただければ幸いです。さらに詳細が必要な場合はお知らせください。
チームの管理方法は次のとおりです。
まず命名規則の観点から、各DAGファイル名は、DAG自体のコンテンツ(DAGバージョンを含む)のDAG Idと一致します。最終的にAirflow UIに表示されるのはDAG IDであり、各DAGの背後で使用されているファイルを正確に知ることができるため、これは便利です。
このようなDAGの例:
from airflow import DAG
from datetime import datetime, timedelta
default_args = {
'owner': 'airflow',
'depends_on_past': False,
'start_date': datetime(2017,12,05,23,59),
'email': ['[email protected]'],
'email_on_failure': True
}
dag = DAG(
'my_Nice_dag-v1.0.9', #update version whenever you change something
default_args=default_args,
schedule_interval="0,15,30,45 * * * *",
dagrun_timeout=timedelta(hours=24),
max_active_runs=1)
[...]
DAGファイルの名前は次のようになります。my_Nice_dag-v1.0.9.py
利点