Введение в Airflow
- Код курса: PF.Airflow
- Длительность: 3 д.
- Цена: 48 000 Р
- Часы в неделю: 24 ак. часов.
Описание курса
Аннотация:
Курс предназначен для практического ознакомления с основами Airflow - системы управления конвейеров обработки данных.
Получаемые знания и навыки
Слушатели:
· Узнают для чего используется Airflow и получат обзор его возможностей.
· Познакомятся с принципами ациклических направленных графов DAG и их применением для создания и управления конвейеров обработки данных.
· Научатся настраивать и использовать календарное планирование задач в Airflow.
· Познакомятся с шаблонами заданий с использованием контекста.
· Поймут суть определения зависимостей.
· Научатся запускать рабочие процессы.
· Ознакомятся с принципами создания потоков обработки.
· Узнают основы разработки пользовательских компонент.
· Освоят подходы к тестированию.
· Научатся использовать контейнеры Docker с Airflow.
· Познакомятся с лучшими практиками использования Airflow.
· Освоят базовые подходы обеспечения безопасности Airflow.
Целевая аудитория:
Аналитики и разработчики систем обработки Больших Данных, специалисты в области Data Science и MachineLearning, а также специалисты, администрирующие такие системы.
Предварительные требования к слушателям:
Минимальные владение Python и ОС Linux.
Программа курса.
1.1 Для чего нужны конвейеры обработки данных.1.2 Airflow - средство построения конвейеров.1.3 Применение Airflow.
2.1 DAG - направленный ациклический граф.2.2 Процесс сборки и обработки данных.2.3 Создание Airflow DAG.2.4 Выполнение Airflow DAG в среде Python.2.5 Выполнение Airflow DAG в контейнере Docker.2.6 Запуск по календарю на регулярной основе.2.7 Обработка отказов заданий.
3.1 Запуск на регулярной основе.3.2 Инкрементальная обработка данных.3.3 Даты выполнения Airflow.3.4 Запуск DAG для данных из прошлых периодов - backfilling.3.5 Дизайн заданий.
4.1 Исследование данных для обработки.4.2 Контекст задания и шаблоны Jinja.4.3 Взаимодействие операторов с внешними системами - hooks.
5.1 Зависимости между заданиями.5.2 Ветвление.5.3 Условные задания.5.4 Триггерные правила.5.5 Обобществление данных между задачами.5.6 Связывание в цепь задач Python.
6.1 Выборка условий с помощью сенсоров.6.2 Запуск внешних DAG.6.3 Запуск потоков обработки с помощью REST/CLI.
7.1 Использование PythonOperator.7.2 Написание собственного оператора hook.7.3 Написание собственного сенсора.7.4 Пакетирование компонент.
8.1 Как выполняется тестирование.8.2 Работа с DAG и контекстом в тестах.8.3 Использование тестов в разработке.8.4 Использование Whirl.8.5 Создание DTAP сред.
9.1 Проблемы взаимодействия множества операторов.9.2 Использование конвейеров.9.3 Запуск задач в Docker.9.4 Запуск задач в Kubernetes.
10.1 Грамотное создание DAG.10.2 Разработка воспроизводимых повторно задач.10.3 Эффективная обработка данных.10.4 Управление ресурсами.
11.1 Архитектуры Airflow.11.2 Установка исполнителей.11.3 Сборка отчетов о выполнении процессов Airflow.11.4 Визуализация и мониторинг метрик Airflow.11.5 Нотификация о невыполненных заданиях.
12.1 Безопасность WEB интерфейса.12.2 Шифрование хранимых данных.12.3 Подключение к LDAP.12.4 Шифрование трафика.