Airflow: Why is there a start_date for operators?

前端 未结 4 1877
北海茫月
北海茫月 2021-01-04 23:24

I don\'t understand why do we need a \'start_date\' for the operators(task instances). Shouldn\'t the one that we pass to the DAG suffice?

Also, if the current time

4条回答
  •  感情败类
    2021-01-05 00:03

    Regarding start_date on task instance, personally I have never used this, I always just have a single DAG start_date.

    However from what I can see this would allow you to specify certain tasks to start at a different time from the main DAG. It appears this is a legacy feature and from reading the FAQ they recommend using time sensors for that type of thing instead and just having one start_date for all tasks passed through the DAG.

    Your second question:

    The execution date for a run is always the previous period based on your schedule.

    From the docs (Airflow Docs)

    Note that if you run a DAG on a schedule_interval of one day, the run stamped 2016-01-01 will be trigger soon after 2016-01-01T23:59. In other words, the job instance is started once the period it covers has ended.

    To clarify:

    • If set on a daily schedule, on the 8th it will execute the 7th.
    • If set to a weekly schedule to run on a Sunday, the execution date for this Sunday would be last Sunday.

提交回复
热议问题