При catchup=True Airflow создаёт недостающие плановые запуски для завершённых интервалов от start_date. Это интервалы расписания, а не просто все календарные даты до сегодня.
Что происходит в Airflow при catchup=True и какие даты будут взяты?
При catchup=True Airflow создаёт недостающие плановые запуски для завершённых интервалов от start_date. Это интервалы расписания, а не просто все календарные даты до сегодня.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
При catchup=True Airflow создаёт недостающие плановые запуски для завершённых интервалов от start_date. Это интервалы расписания, а не просто все календарные даты до сегодня.
Для обычного ежедневного расписания запуск за интервал 1–2 января появляется после завершения этого интервала, а его logical date относится к началу интервала. Точный набор зависит от timetable, часового пояса, end_date и уже созданных запусков.
Catchup не означает одновременное исполнение всех задач: параллелизм ограничивается настройками DAG, executor и pools. Сами задачи должны читать данные своего data interval, а не текущую дату через now(), иначе исторические запуски обработают неверные данные.
Источник: Документация Apache Kafka.