Школа Больших Данных
566 subscribers
117 photos
711 links
Канал Школы Больших Данных https://www.bigdataschool.ru/ - обучение технологиям Big Data: разработка приложений и администрирование кластеров Hadoop, Kafka, Spark, NoSQL, Python, ML и DS.
Тел: +7 (495) 41-41-121
Контакты: @Bigdataschool_msk @olga_burykh
Download Telegram
#ApacheAirFlow #пулы #приоритеты
Пулы и приоритеты задач в Apache AirFlow


Как изменить приоритет задачи в очереди исполнителя Apache AirFlow, на что влияет метод определения весов, каким образом можно балансировать нагрузку с помощью пулов и зачем настраивать количество слотов.

Как приоритизировать задачи в очереди Apache AirFlow
Дата-инженеры, которые используют Apache AirFlow для оркестрации пакетных процессов, знают, что задачи скапливаются в очереди исполнителя.
Статья: https://bigdataschool.ru/blog/news/airflow/pools-and-task-priority-in-airflow.html
Курсы:
https://bigdataschool.ru/courses/data-flow-with-apache-airflow https://bigdataschool.ru/courses/airflow-on-yandex-managed-service
Наш сайт:
https://bigdataschool.ru
Копирование, размножение, распространение, перепечатка (целиком или частично), или иное использование материала допускается только с письменного разрешения правообладателя ООО "УЦ Коммерсант"
#OpenID #Flask #ApacheAirFlow
OpenID, Flask-AppBuilder и CVE-2024-25128 в Apache AirFlow


Чем уязвимость устаревшего метода аутентификации OpenID в Flask-AppBuilder опасна для Apache AirFlow и как это исправить? Обзор уязвимости CVE-2024-25128.

Уязвимости OpenID для FAB в Apache AirFlow
В конце февраля 2024 выяснилось, что в прошлом релизе Apache AirFlow 2.8, вышедшем 14 декабря прошлого года, обнаружилась критическая уязвимость, набравшая более 9 баллов по 10-бальной шкале CVSS (Common Vulnerability Scoring System). Впрочем, эта неприятность вряд ли затронет слишком много пользователей, поскольку она связана с устаревшим методом аутентификации OpenID в Flask AppBuilder (FAB).
Статья
Курсы: AIRF, YARF
Наш сайт
Копирование, размноженираспространение, перепечатка (целиком или частично), или иное использование материала допускается только с письменного разрешения правообладателя ООО "УЦ Коммерсант"
#ApacheAirFlow #Pythonвызов
Асинхронные Python-вызовы и отсроченные операторы в Apache AirFlow

Что общего между триггерами, отсроченными операторами и асинхронными Python-вызовами в Apache AirFlow, чем они отличаются от стандартных операторов и сенсоров, для чего их использовать и как это сделать.

Асинхронные вызовы и отсроченные операторы в Apache AirFlow

В синхронном коде задачи выполняются последовательно, одна за другой. Причем каждая задача должна завершиться до того, как начнется следующая. Поэтому если одна задача занимает много времени, например, ожидает ответа от внешней системы или читает много данных из большого файла, весь процесс блокируется до завершения этой медленной задачи.
Статья
Курсы: AIRF YARF
Наш сайт
Копирование, размножение, распространение, перепечатка (целиком или частично), или иное использование материала допускается только с письменного разрешения правообладателя ООО "УЦ Коммерсант"
#ApacheAirFlow #оператор #создание
Как написать свой отсроченный оператор Apache AirFlow

Почему триггеры отсроченных операторов Apache AirFlow не могут быть блокирующими и как сделать их асинхронными с помощью Python-библиотеки asyncio.

Создание своего отсроченного оператора в Apache AirFlow

О том, что такое отсроченные операторы, как они связаны с триггерами и асинхронными Python-вызовами в Apache AirFlow, мы недавно говорили здесь. Помимо использования существующих отсроченных операторов, дата-инженер может написать свой собственный, соблюдая следующие рекомендации:
Статья
Курсы: AIRF YARF
Наш сайт
Копирование, размножение, распространение, перепечатка (целиком или частично), или иное использование материала допускается только с письменного разрешения правообладателя ООО "УЦ Коммерсант"
#YAML #LowCode #ApacheAirFlow #DAGFactory
YAML вместо Python: LowCode-разработка DAG в Apache AirFlow с DAG Factory


Как написать DAG в Apache AirFlow без программирования, определив его конфигурацию в YAML-файле, и автоматически получить пакетный конвейер обработки данных с помощью Python-библиотеки DAG Factory.

Демократизация разработки ETL-конвейеров или что такое DAG Factory в Apache AirFlow

Хотя Apache AirFlow и так считается довольно простым фреймворком для оркестрации пакетных процессов и реализации ETL-операций благодаря использованию Python, разработчики стараются сделать его еще проще. Это соответствует устойчивому тренду в инженерии данных с фокусированием на бизнес-логике обработки данных, а не фактическом программировании.
Статья
Курсы:
AIRF YARF
Наш сайт
Копирование, размножение, распространение, перепечатка (целиком или частично), или иное использование материала допускается только с письменного разрешения правообладателя ООО "УЦ Коммерсант"
#ApacheAirFlow #DAG #уведомления
Отправка уведомлений в Apache AirFlow

Как оповестить дата-инженера о задержке и результате выполнения задачи или всего DAG пакетного конвейера обработки данных: варианты отправки уведомлений в Apache AirFlow и особенности их применения.

Варианты отправки уведомлений в Apache AirFlow
Даже когда конвейер обработки данных разработан и успешно протестирован, в ходе его эксплуатации в рабочей среде неизбежно возникают ошибки и внештатные ситуации, о которых надо знать дата-инженеру. Для такого информирования в популярном оркестраторе пакетных процессов Apache AirFlow есть механизм уведомлений.
Статья
Курсы: AIRF YARF
Наш сайт
Копирование, размножение, распространение, перепечатка (целиком или частично), или иное использование материала допускается только с письменного разрешения правообладателя ООО "УЦ Коммерсант"
#Сериализация #ApacheAirFlow #DAG #JSON
Сериализация в Apache AirFlow


Как Apache AirFlow сериализует и десериализует данные, зачем с версии 2 включена обязательная сериализация DAG в JSON, почему для пользовательской сериализации рекомендуются словари или примитивы и что поможет сократить нагрузку на базу данных метаданных через настройку параметров сериализации в конфигурационном файле фреймворка.

Сериализация данных в Apache AirFlow
Чтобы сохранить данные в файле или передать по сети, их необходимо сериализовать, т.е. перевести из исходной структуры в линейную форму. Обратный процесс восстановления сериализованного объекта в исходную структуру данных называется десериализацией.
Статья
Курсы:
AIRF YARF
Наш сайт
Копирование, размножение, распространение, перепечатка (целиком или частично), или иное использование материала допускается только с письменного разрешения правообладателя ООО "УЦ Коммерсант"
#ETL #ApacheAirFlow #DAG
ETL по расписанию: 4 способа планирования запусков DAG в Apache AirFlow


Чем планирование запуска DAG в Apache AirFlow с объектом timedelta отличается от использования cron-выражений, в чем разница CronTriggerTimetable и CronDataIntervalTimetable, а также как создать собственный класс расписания.

Объект timedelta vs cron-выражение: задание расписания запуска DAG в Apache AirFlow
Apache AirFlow идеально подходит для классических пакетных ETL-сценариев, например, когда надо извлечь данные из транзакционных систем, преобразовать и загрузить их в корпоративное хранилище (DWH, Data WareHouse). Обычно такие процессы запускаются по расписанию и часто выполняются глубокой ночью, чтобы не мешать работе бизнес-пользователей.
Статья
Курсы:
AIRF YARF
Наш сайт
Копирование, размножение, распространение, перепечатка (целиком или частично), или иное использование материала допускается только с письменного разрешения правообладателя ООО "УЦ Коммерсант"
#ApacheAirFlow #Настройка #планировщик
Настройка планировщика Apache AirFlow

Как устроен планировщик заданий Apache AirFlow, от чего зависит его производительность и какие конфигурации помогут ее улучшить: настройки, приемы, рекомендуемые значения и лучшие практики.

Как работает планировщик Apache AirFlow
Apache AirFlow как фреймворк оркестрации пакетных процессов включает несколько компонентов. Одним из них является планировщик (scheduler), который отслеживает все задачи и DAG, а также запускает экземпляры задач после завершения их зависимостей, используя настроенный исполнитель. При этом выполняется подпроцесс, который отслеживает и синхронизируется со всеми DAG в указанном каталоге DAG. Статья
Курсы:
AIRF YARF
Наш сайт
Копирование, размножение, распространение, перепечатка (целиком или частично), или иное использование материала допускается только с письменного разрешения правообладателя ООО "УЦ Коммерсант"
#ApacheAirFlow #развертывание #ETL #кластер
Многопользовательское развертывание Apache AirFlow: проблемы и решения


Что не так с работой Apache AirFlow в многопользовательской среде, зачем предоставлять каждой команде свое развертывание ETL-фреймворка, каковы недостатки этого решения и как организовать мультитенантный кластер.

Почему Apache Airflow не предназначен для многопользовательского использования
В современной дата-инженерии Apache AirFlow стал наиболее популярным инструментом для пакетных ETL-процессов. Чтобы использовать его наиболее эффективно в большой организации, надо решить вопрос с разделением среды Airflow между разными командами или предоставить возможность собственного развертывания для каждой команды.
Статья
Курсы:
AIRF YARF
Наш сайт
Копирование, размножение, распространение, перепечатка (целиком или частично), или иное использование материала допускается только с письменного разрешения правообладателя ООО "УЦ Коммерсант"