Описание
В ходе курса участники получат знания об областях применения, основных возможностях и ограничениях инструмента Apache AirFlow, а также научатся использовать его возможности при работе в Hadoop .
Темы курса включают: введение в ETL и Apache AirFlow, настройку и установку, изучение абстракций и компонентов, работу с DAG, шедулинг и контроль исполнения процессов, мониторинг и отладку, более продвинутые техники и сценарии использования AirFlow, а также лучшие практики интеграции с другими системами, конфигурирование и масштабирование. Кроме того, будут рассмотрены вопросы разработки плагинов, нотификаций, собственных сенсоров и операторов, а также способы тестирования и запуск AirFlow в контейнерах Docker.
По окончании курса участники будут уметь эффективно использовать возможностиApache AirFlow при работе в Hadoop, создавать, выполнять и мониторить потоки заданий по обработке данных.
удостоверение о повышении квалификации государственного образца
Цели
Целевая аудитория
Предварительная подготовка
Разбираемые темы
-
1.Введение в Apache Airflow [Лекции (ак.ч) - 0,5., Практика (ак.ч) - 1,5]
-
Что такое ETL
-
Оркестрация вручную - Cron и скрипты
-
Первый оркестратор для Hadoop - Oozie
-
Введение в AirFlow
-
Локальная установка AirFlow
-
Установка в Docker
-
Настройка подключений к внешним сервисам
-
REST API & CLI
Практика 1. Установка и получение доступа к AirFlow
-
-
2.Описание и выполнение заданий в AirFlow [Лекции (ак.ч) - 0,5., Практика (ак.ч) - 1,5]
-
Запускаемое задание - граф задач (DAG)
-
Оператор (operator)
-
Процесс исполнения задания
-
Состояния задач (task)
-
Веб-интерфейс
- Планирование, ручной запуск и мониторинг выполнения заданий.
-
-
3.Компоненты AirFlow [Лекции (ак.ч) - 0,5., Практика (ак.ч) - 0,5]
-
Планировщик (Scheduler)
-
Исполнитель заданий (Executor)
-
Исполнитель задач (Worker)
-
Веб-сервер
-
База метаданных
-
Конфигурация
-
-
4.Операторы и их композиции [Лекции (ак.ч) - 0,5., Практика (ак.ч) - 2,5]
-
Виды операторов
-
PythonOperator
-
BashOperator
-
HttpOperator
-
*SQLOperator
Практика 4. Описание простых заданий.
-
Последовательное выполнение
-
Параллельное выполнение
-
Проверка условий
-
Передача данных между операторами: переменные
-
Шаблоны и макросы
-
-
5. Условия срабатывания заданий [Лекции (ак.ч) - 0,5., Практика (ак.ч) - 1,5]
- Готовые сенсоры
Практика 6. Задание условий срабатывания заданий.
-
Хуки
-
Триггеры
-
Прослушиватели
-
Backfill & catchup
Практика 7. Установка хуков.
- Мониторинг и отладка заданий
-
6.Разработка для AirFlow [Лекции (ак.ч) - 0,5., Практика (ак.ч) - 1,5]
-
Плагины и нотификации.
-
Сенсоры и branch операторы.
-
Операторы и хуки.
Практика 8. Разработка и использование оператора.
-
-
7.Лучшие практики использования [Лекции (ак.ч) - 0,5., Практика (ак.ч) - 3,5]
-
Оптимизация заданий
-
Взаимодействие заданий (XCom)
-
Динамические задания
-
Управление параллелизмом и пулингом
-
Тестирование заданий
-
Примеры практических задач и их решений
-
-
8.Интеграция Airflow с другими системами [Лекции (ак.ч) - 0,5., Практика (ак.ч) - 3,5]
-
Обращение к файловой системе HDFS
-
Пошаговое выполнение отдельными сессиями Spark
-
Выполнение в одной сессии через Spark REST API
Практика 10. Запуск заданий Spark.
- Выполнение запросов Impala
Практика 11. Запуск запросов Impala.
- Выполнение запросов ClickHouse
Практика 12. Запуск заданий ClickHouse.
- Интеграция с SuperSet
-
-
9.Промышленное развертывание AirFlow [Лекции (ак.ч) - 0,5., Практика (ак.ч) - 3,5]
-
Многоузловой кластер
-
AirFlow в Docker
-
Развертывание в Kubernetes
-
Аутентификация, шифрование, управление доступом
-
Журналы
-
Мониторинг
-
Обновление версий
Практика 13. Выполнение заданий на многоузловом кластере.
-
-
Итого на курс 24 ак. часа: теория – 4,5 ч (19%), практика – 19,5 ч (81%), ДЗ – по каждой теме.
Примечание
С 1994 г. преподает дисциплины, связанные с управлением данными, проектированием информационных систем и разработкой программного обеспечения.
С 2014 г. Александр является штатным экспертом Luxoft Training по направлению «Разработка и архитектура ПО, СУБД Oracle», где занимается проведением тренингов, разработкой тренинговых программ и развитием данного направления.
О проектах:
Александр занимается разработкой учебных программ, чтением лекций, проведением семинаров, практических и лабораторных работ. Под его руководством уже не один десяток специалистов успешно защитили выпускные квалификационные работы бакалавра и магистерские диссертации.
Среди его кейсов работа в ЗАО «ТИТАН МЕТА», Московском государственном университете приборостроения и информатики, Национальном исследовательском университете «Высшая школа экономики» и Luxoft Training.
Курсы, сертификаты, членство в профессиональных организациях:
2009 г. — повышение квалификации в Московском государственном университете приборостроения и информатики по программе «Информационная компетентность в профессиональной деятельности преподавателя вуза».
2011 г. — повышение квалификации в Информационно-Вычислительном Центре Московского энергетического института (технического университета) по программе «Современные технологии построения баз данных на примере Microsoft SQL Server 2008. Web-приложения и современные средства разработки. Современные технологии построения компьютерных сетей с использованием Microsoft Windows Server 2008 R2».
2024 г. — Сертифицированный тренер PostgreSQL по курсу DBA1 «Администрирование PostgreSQL 13. Базовый уровень».
Александр является членом организаций:
-
IEEE, IEEE Computer Society (Institute of Electrical and Electronics Engineers / Институт инженеров электротехники и электроники).
-
ACM, ACM SIGMOD (Association for Computing Machinery / Ассоциация вычислительной техники).