我讀過Airflow的關於"What's the deal with start_date
?"的常見問題,但它仍然不清楚爲什麼建議不要使用動態start_date
。爲什麼建議不要在Airflow中使用動態start_date?
據我瞭解,一個DAG的execution_date
由所有的DAG的任務之間的最小start_date
確定,以及隨後的DAG奔跑在最新execution_date
+ schedule_interval
跑。
如果我將DAG的default_args
start_date
是,比如說,昨天定爲20:00:00
,與天爲1 schedule_interval
,怎麼會那個破或混淆的調度,如果在所有?如果我理解正確,調度程序將觸發DAG,其日期爲execution_date
,日期爲20:00:00
,下一個DAG運行將安排在今天的20:00:00
。
有一些我失蹤的概念嗎?
那麼調度程序計算'start_date'的頻率如何?它是否在每次運行之前計算它? – earthican
我想我對此感到困惑:如果'start_date'在't'時間是'datetime.now()',那麼't'應該已經保存在某個地方,對吧?所以當't + 1'終於到來時,調度程序應該知道開始運行,因爲它不會再次計算'start_date' – earthican
@earthican這在文檔中沒有明確提及。還有一件事我想提一下,如果你在start_date或schedule_interval中做了任何修改,總是修改dag的名字,比如my_dag_v1或者其他東西。如果您不更改dag的名稱,則對start_date或interval的更改將不起作用 – liferacer