Learning Platform
Глоссарий Troubleshooting
Урок 01.02 · 12 мин
Начальный
КурсRoadmapModule overview

Обзор курса и дорожная карта

Этот курс — самое глубокое погружение в Apache Airflow 2.x на русском языке. Цель — не «научиться писать DAG», а понять, как Airflow устроен под капотом: как scheduler конкурирует за critical section через row-level locks PostgreSQL, как triggerer держит тысячи асинхронных triggers на одном asyncio loop, как Datasets реализуют data-aware scheduling, как Celery Executor и Kubernetes Executor отличаются в внутреннем устройстве.


Почему Airflow 2.x, не 3.x

На май 2026 года ~80% production deployments всё ещё на 2.10/2.11. Airflow 2.11 — официальный LTS с поддержкой security patches. Managed services (AWS MWAA, GCP Cloud Composer 2) только начинают migration на 3.x.

Курс делает вас экспертом по 2.x — production reality — а в финальном модуле даёт upgrade path к 3.x: что меняется (FastAPI server, Task SDK, DAG Versioning, Assets rename), как мигрировать через airflow upgrade-check, что сломается в DAG-коде.

Большинство концепций 2.x остаются актуальными в 3.x — изменения преимущественно архитектурные и инфраструктурные, а не в DAG-коде. После этого курса вы сможете и работать в 2.x prod, и подготовить миграцию на 3.x.


Целевая аудитория

Курс рассчитан на инженеров, которые:

  • Уже работали с Airflow на уровне «писал DAG, поднимал docker-compose с LocalExecutor»
  • Понимают Python (декораторы, контекстные менеджеры, asyncio хотя бы на уровне идеи)
  • Знают SQL и работали с PostgreSQL или MySQL
  • Хотят углубить свои знания Airflow 2.x для production использования

Если вы впервые слышите про Airflow — рекомендую сначала пройти базовый курс на Astronomer Academy или прочитать «Data Pipelines with Apache Airflow» (Manning). Этот курс — продолжение, а не первый шаг.


Структура 19 модулей

Курс построен по принципу «от поверхности к ядру»: первые модули вводят концепции, средние препарируют internals, последние возвращаются к практике с production-перспективой.

Дорожная карта курса
00 — ВведениеТекущий модуль. Что такое Airflow, обзор курса, environment setup.
Основы
01 — Архитектура 2.xWebserver, Scheduler, Workers, Triggerer, DAG Processor — компонентный overview.
02 — DAG fundamentalsTaskFlow API, Custom Timetables (AIP-39), Setup/Teardown, DAG serialization.
03 — Operators / SensorsBaseOperator anatomy, poke vs reschedule vs deferred, provider ecosystem.
★ Internals
04 — Scheduler internalsГЛАВНЫЙ модуль курса. Critical Section, HA через PG row-level locking (SELECT ... FOR UPDATE NOWAIT), zombie cleanup, DagFileProcessor pool.
05 — Executors deepLocal, Celery (prefetch pitfall), Kubernetes (watcher thread), CeleryKubernetes hybrid, Multiple Executors (AIP-61, 2.10+).
06 — XComDB storage, 48KB лимит, Object Storage XCom backend (2.8+).
07 — Dynamic Mappingexpand (AIP-42, 2.3+), expand_kwargs, scaling pitfalls.
08 — DatasetsAIP-48 (2.4+), DatasetAlias (2.9), data-aware scheduling. В 3.x переименованы в Assets.
09 — Triggerer / Deferrableasyncio event loop, BaseTrigger, TriggerEvent (AIP-40, 2.2+).
10 — SecretsFernet encryption internals, Vault/AWS SM backends, lookup order.
11 — Pools / Concurrency5 уровней concurrency, priority weight rules, slot contention.
12 — Plugins / ListenersListener API (2.8+), AirflowPlugin class, custom hooks.
13 — REST APIStable REST API v1, JWT auth, automation patterns.
14 — Observability + OpenLineageOTel (AIP-49, 2.10+), OpenLineage automatic emission, Marquez.
Production
15 — ProductionHA reference, Helm chart, MWAA/Composer/Astronomer comparison.
16 — TestingUnit/integration tests, airflow dags test, pytest-airflow.
17 — Design PatternsIdempotency, DAG factory, OpenLineage-aware patterns.
18 — Capstone + Upgrade Path 3.xE2E проект + Migration 2.x → 3.x playbook через airflow upgrade-check и ruff AIR301/AIR302.

★ — killer-модули с уникальным контентом, которого нет в других курсах: scheduler critical section с live pg_locks мониторингом, executor comparison labs, OpenLineage end-to-end через Marquez.


Что вы получите

К концу курса вы будете способны:

  1. Развернуть production HA-кластер Airflow 2.x — 2-3 scheduler, 2 triggerer, multi-worker, RDS PostgreSQL, PgBouncer, Helm chart на Kubernetes.
  2. Диагностировать problem hands-on: stuck queued tasks, zombie cleanup, scheduler loop slowdown, Celery prefetch pitfall.
  3. Писать ультимативные DAGs: TaskFlow с typed XCom, dynamic mapping, deferrable sensors, datasets-aware scheduling.
  4. Внедрить OpenLineage для автоматического data lineage с Marquez backend.
  5. Подготовить миграцию с 2.x на 3.x — knowing the breaking changes, ruff AIR301/AIR302 rules, airflow upgrade-check.
  6. Аргументировать выбор Airflow vs Prefect / Dagster / Argo / Temporal в конкретном архитектурном контексте.

Формат уроков

Каждый модуль состоит из 5-7 уроков, единого формата:

  • MDX-урок — теория с диаграммами, кодом, callout-блоками. 15-30 минут чтения.
  • Knowledge check в конце каждого урока — проверка ключевого понимания.
  • Quiz после урока — 4 вопроса (multiple-choice + true/false) с bloomLevel разной глубины (conceptual / applied / analytical / evaluative).
  • Module exam — 6 вопросов в конце каждого модуля, passing threshold 70%.
  • Docker lab на каждый ключевой модуль — экспериментально проверить теорию руками.
  • Glossary и Troubleshooting — справочник терминов и production gotchas, на которые ссылаются уроки.
TIP

Большинство killer-моментов курса — в Docker labs. Lab «HA Scheduler Race» с двумя scheduler-ами и live pg_locks мониторингом стоит часов изучения теории. Делайте labs.


Стек курса

  • Apache Airflow 2.10.x / 2.11.x (LTS) — основной target
  • Python 3.11
  • PostgreSQL 16 — metadata DB
  • Redis 7 — Celery broker
  • Docker Compose — для всех labs
  • Kubernetes via OrbStack/Kind — для KubernetesExecutor и Helm chart labs
  • Marquez — OpenLineage backend
  • Vault — для Secrets Backend lab

Что НЕ покрываем

Курс ориентирован на современный 2.x (2.10/2.11). Намеренно опускаем:

  • Airflow 1.x — устарел, не используется в новых проектах
  • SubDAG operator — deprecated, anti-pattern, заменён TaskGroup
  • Smart Sensors — удалены в 2.x, заменены Deferrable Operators
  • SequentialExecutor — только для testing
  • Flower как primary monitor — заменяется OTel метриками (с 2.10+)
  • Legacy schedule_interval syntax — современный синтаксис schedule=...

Проверка знанийKnowledge check
Какие два модуля курса дают наибольшую глубину internals и наиболее уникальны по сравнению с другими курсами по Airflow?
ОтветAnswer
Модули 04 (Scheduler internals) и 05 (Executors deep dive). Они препарируют scheduler main loop, critical section с row-level locks PostgreSQL, HA mechanism, zombie cleanup, executor-specific internals (Celery prefetch pitfall, Kubernetes watcher thread, Multiple Executors AIP-61 в 2.10+). Также важны модули 08 (Datasets с DatasetAlias 2.9) и 14 (OpenLineage). Эти модули вместе составляют killer-материал курса.

Проверьте понимание

Результат: 0 из 0
Концептуальный
Вопрос 1 из 4. Какие два модуля курса наиболее уникальны по сравнению с другими курсами по Airflow на рынке?

Закончили урок?

Отметьте его как пройденный, чтобы отслеживать свой прогресс

Войдите чтобы оценить урок

Прогресс модуля
0 из 3