An Airflow timetable determines when DAG runs are created. For incremental pipelines, a data-interval timetable divides time into discrete windows, then runs the DAG after each window has passed so its tasks can process the completed data. section 3.4.2 section 3.4.4
A data-interval timetable gives each DAG run a precise processing context:
- Airflow executes the DAG at the end of the interval rather than at its start. section 3.4.2 section 3.4.4
- data_interval_start and data_interval_end identify the interval assigned to the run. section 3.4.2
- logical_date generally identifies the interval, usually by pointing to its start. section 3.4.4
- Trigger timetables specify execution points, while data-interval timetables specify spans that tasks can process directly. section 3.4.2
Process one day of events
Configure a DAG with CronDataIntervalTimetable("@daily", timezone="UTC"), then template the events API request with data_interval_start and data_interval_end. The resulting run fetches only the completed interval and can write results using logical_date as the file identifier.
Choose timetable classes explicitly when schedule semantics matter. Airflow supports trigger points, data intervals, and time-delta intervals; shorthand schedules can vary with scheduler configuration and Airflow version. section 12.1.7
