Не прошло и пары месяцев с выпуска Apache AirFlow 2.4, о чем мы писали здесь, как вышел новый релиз. Разбираемся с главными новинками версии 2.5 самого популярного ETL-оркестратора: ключевые исправления и значимые для дата-инженера фичи.
30 новинок Apache AirFlow 2.5
2 декабря 2022 года вышел Apache AirFlow 2.5, который включает улучшенную функцию тестирования DAG, аннотации и динамическое сопоставление задач, планирование конвейеров в зависимости от повышение производительности, а также исправление множества ошибок. Одним из ключевых улучшений является переработанная функция проверки (airflow dags test), которая на порядок быстрее, чем предыдущая реализация, и гораздо полезнее. Ранее запуск теста DAG вызывал холодный запуск локального экземпляра планировщика, что отнимало много времени и задерживало тестирование. Кроме того, журналы задач, сгенерированные командой airflow dag test, записывались вместе с другими файлами в запутанной иерархии папок, вынуждая дата-инженеров использовать такие инструменты, как find или grep, для их поиска.
С обновленной командой airflow dag test разработчики AirFlow вернулись к первоначальным принципам, фактически создав локальный цикл for, который проверяет наличие тестов DAG и автоматически запускает их, непрерывно выполняя цикл и печатая ошибки в консоли CLI-интерфейса фреймворка. Это позволяет не беспокоиться о SLA, расписании или совместном использовании ресурсов с другими DAG.
Еще одна новая функция в версии 2.5 позволяет пользователям аннотировать экземпляры задач, чтобы добавлять полезные примечания к сбоям задач или другим аномалиям, документируя шаги по их устранению. Например, если ежедневный запуск DAG для подготовки данных завершается сбоем, дата-инженер может перезапустить задачу вручную, добавив примечание «Запланирован запуск вручную из-за предыдущего сбоя».
Наконец, функция планирования AirFlow на основе данных, которая впервые вышла в версии 2.4, получила множество улучшений в новом выпуске. Упрощен поиск наборов данных и пользовательский интерфейс: он теперь отображает полезную информацию о наборах данных в контексте, например момент последнего обновления и частота изменений. Также представление зависимостей набора данных в пользовательском интерфейсе стало более наглядным: ранее в нем отображались восходящие и нисходящие зависимости для всех наборов данных, а теперь показываются лишь те, которые находятся непосредственно выше или ниже по течению от него.
В AirFlow 2.5 также представлены десятки улучшений функции динамического сопоставления задач и новая фича автоматического закрытия журнала задач, которая автоматически обновляет его в пользовательском интерфейсе фреймворка по мере добавления новых записей в журнал. Ранее дата-инженеру приходилось обновлять это вручную. Улучшение пользовательского интерфейса Apache AirFlow теперь позволяет настраивать размер представления сетки относительно сеансов.
Отметим другие новые фичи AirFlow 2.5:
- TaskRunner, который уведомляет о запуске и завершении компонента;
- изменение состояния DagRun в систему плагинов Listener;
- метрика для необработанных кодов возврата задачи;
- логика для XComArg для извлечения определенных индексов сопоставления;
- очистка групп задач;
- метрика продолжительности запроса критической секции;
- журнал аудита для AirflowModelViews(Variables/Connection);
- поддержку PostgreSQL 15;
- развертывание задачи в сопоставленной группе во время синтаксического анализа и при выполнении;
- сброс коммитов и очистка подмодулей;
- scheduler_job с метрикой для таймера цикла планировщика;
- возможность использование наборов данных в потоке задач;
- пользовательские комментарии к экземпляру задачи и их запускам;
- копирование DagRun JSON в буфер обмена;
- дополнительные элементы управления для SLA;
- отображение времени анализа DAG в его представлении;
- декоратор сенсора;
- фильтрация наборов данных по последним событиям обновления;
- поддержка фильтра Is/not Null для значения None в веб-GUI;
- разделение и обработка параметров в сопоставленном операторе;
- правило триггера one_done;
- поддержка добавления/удаления разрешений для команд ролей;
- информация о триггере экземпляра задачи в API;
- флаг для десериализации значения в пользовательском бэкэнде XCom.
Код курса
ADH-AIR
Ближайшая дата курса
Продолжительность
ак.часов
Стоимость обучения
0 руб.
Освойте приемы администрирования и эксплуатации Apache AirFlow для дата-инженерии и аналитики больших данных на специализированных курсах в нашем лицензированном учебном центре обучения и повышения квалификации для разработчиков, менеджеров, архитекторов, инженеров, администраторов, Data Scientist’ов и аналитиков Big Data в Москве:
Источники