Airflow Execution_date


最も重要な
  • execution_date実行日ではなく、注文番号(run id)です.
    時間と理解したいなら予約時間ではなく「予約しようとした時間」
  • 「韓国時間」を忘れ、「UTC基準」で考える.
  • start_date': datetime(2019, 6, 6),
    schedule_interval="@daily",
    これによりdagは実際に2019/6/7に初めて運転される.execution_date「2019-06-06」の価格を入れる.
    2019年6月8日に運行されるrun会議execution_date「2019-06-07」が発売され、
    2019年6月9日に運行されているrun儀execution_date中には『2019-06-08』があります...入ります.
    例2
    下図のように韓国時間の午前9時以前を指定すると問題が発生します.
    schedule interval="3115*",#(韓国時間00:31)
  • 実行時間:「2019-06-11 T 15:31」(韓国時間2019/06/1200:31)
  • execution date:「2019-06-10」(ds=注文番号)
  • 2019年6月12日から2019年6月10日の日誌作業が開始された.
    そのため、韓国時間にログを収集し、午前9時までにETLを行わなければならない場合は、
    dsや昨日のdsではなく、明日のdsを使うべきです.
    結論と注意事項)
  • execution_date実行日ではなく、注文番号(run id)です.
    時間と理解したいなら予約時間ではなく「予約しようとした時間」
  • 「韓国時間」を忘れ、「UTC基準」で考える.
  • execution_dateこの期間の左側境界を基準に
  • 使用
  • now()危険です.気流にダイナミック値を使用しないことをお勧めします.
  • Reference)
    1) https://m.blog.naver.com/PostView.nhn?blogId=gyrbsdl18&logNo=221561318823&proxyReferer=https:%2F%2Fwww.google.com%2F
    2) https://jaemunbro.medium.com/airflow-execution-date-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0-ea25698cf502