Код Junior ETL, ELT и Airflow обновлено
Какие интервалы догонит catchup
Условие
Ежедневный DAG с интервальным расписанием. Напишите catchup_intervals(start_date, now): даты в формате YYYY-MM-DD и YYYY-MM-DDTHH:MM. Верните список интервалов [начало, конец] (строки YYYY-MM-DD) за все дни, начиная с start_date, у которых конец интервала (следующая полночь) не позже now. Это запуски, которые создаст catchup.
Примеры
catchup_intervals("2025-09-01", "2025-09-03T10:00") // [["2025-09-01", "2025-09-02"], ["2025-09-02", "2025-09-03"]]
catchup_intervals("2025-09-01", "2025-09-01T23:59") // []
catchup_intervals("2025-09-01", "2025-09-02T00:00") // [["2025-09-01", "2025-09-02"]]
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.