
Курс предназначен для практического ознакомления с основами Airflow - системы управления конвейеров обработки данных.
Участники обучения:
- Узнают для чего используется Airflow и получат обзор его возможностей.
- Познакомятся с принципами ациклических направленных графов DAG и их применением для создания и управления конвейеров обработки данных.
- Научатся настраивать и использовать календарное планирование задач в Airflow.
- Познакомятся с шаблонами заданий с использованием контекста.
- Поймут суть определения зависимостей.
- Научатся запускать рабочие процессы.
- Ознакомятся с принципами создания потоков обработки.
- Узнают основы разработки пользовательских компонент.
- Освоят подходы к тестированию.
- Научатся использовать контейнеры Docker с Airflow.
- Познакомятся с лучшими практиками использования Airflow.
- Освоят базовые подходы обеспечения безопасности Airflow.
Целевая аудитория:
Аналитики и разработчики систем обработки Больших Данных, специалисты в области Data Science и MachineLearning, а также специалисты, администрирующие такие системы.
Предварительные требования к слушателям:
Минимальные владение Python и ОС Linux.
Программа
-
Введение в Airflow.
- Для чего нужны конвейеры обработки данных.
- Airflow - средство построения конвейеров.
- Применение Airflow.
-
Устройство DAG.
- DAG - направленный ациклический граф.
- Процесс сборки и обработки данных.
- Создание Airflow DAG.
- Выполнение Airflow DAG в среде Python.
- Выполнение Airflow DAG в контейнере Docker.
- Запуск по календарю на регулярной основе.
- Обработка отказов заданий.
-
Календарное планирование выполнения.
- Запуск на регулярной основе.
- Инкрементальная обработка данных.
- Даты выполнения Airflow.
- Запуск DAG для данных из прошлых периодов - backfilling.
- Дизайн заданий.
-
Шаблоны заданий.
- Исследование данных для обработки.
- Контекст задания и шаблоны Jinja.
- Взаимодействие операторов с внешними системами - hooks.
-
Зависимости.
- Зависимости между заданиями.
- Ветвление.
- Условные задания.
- Триггерные правила.
- Обобществление данных между задачами.
- Связывание в цепь задач Python.
-
Потоки обработки.
- Выборка условий с помощью сенсоров.
- Запуск внешних DAG.
- Запуск потоков обработки с помощью REST/CLI.
-
Разработка пользовательских компонент.
- Использование PythonOperator.
- Написание собственного оператора hook.
- Написание собственного сенсора.
- Пакетирование компонент.
-
Тестирование.
- Как выполняется тестирование.
- Работа с DAG и контекстом в тестах.
- Использование тестов в разработке.
- Использование Whirl.
- Создание DTAP сред.
-
Запуск задач в контейнерах.
- Проблемы взаимодействия множества операторов.
- Использование конвейеров.
- Запуск задач в Docker.
- Запуск задач в Kubernetes.
-
Практика использования Airflow.
- Грамотное создание DAG.
- Разработка воспроизводимых повторно задач.
- Эффективная обработка данных.
- Управление ресурсами.
-
Эксплуатация Airflow.
- Архитектуры Airflow.
- Установка исполнителей.
- Сборка отчетов о выполнении процессов Airflow.
- Визуализация и мониторинг метрик Airflow.
- Нотификация о невыполненных заданиях.
-
Безопасность Airflow.
- Безопасность WEB интерфейса.
- Шифрование хранимых данных.
- Подключение к LDAP.
- Шифрование трафика.
Похожие курсы
Пройдите тест и узнайте, как хорошо вы знаете Airflow