Airflow deployment на собеседовании Data Engineer

Готовься к собесу аналитика как в Duolingo
10 минут в день — SQL, Python, A/B, метрики. 1700+ вопросов в Telegram
Открыть Карьерник в Telegram

Карьерник — Duolingo для аналитиков: 10 минут в день тренируй SQL, Python, A/B, статистику, метрики и ещё 3 темы собеса. 1500+ вопросов в Telegram-боте. Бесплатно.

Зачем спрашивают на собесе DE

Airflow в production — отличается от dev. На собесе DE: «как ты deploy», «отличия executors».

Components

Webserver. UI.

Scheduler. Decides what to run when.

Worker. Executes tasks.

Triggerer. Async waiting (deferrable operators).

Metadata DB. Stores DAG state, runs, task instances. Postgres стандарт.

Message broker. Redis / RabbitMQ for Celery.

Executors

SequentialExecutor. Один task за раз. Только для dev.

LocalExecutor. Multiple parallel processes. Single machine.

CeleryExecutor. Distributed via message broker. Standard для production.

KubernetesExecutor. Каждая task — separate k8s pod.

CeleryKubernetesExecutor. Hybrid — Celery default, k8s для тяжёлых.

HA setup

Multiple schedulers. Airflow 2+ — поддержка multi-scheduler. Все active, distribute work.

Multiple webservers. Behind LB.

Workers. Scale horizontally.

Metadata DB. Postgres с replication / managed (RDS Multi-AZ).

Message broker. Redis cluster или RabbitMQ HA.

Один scheduler / DB outage — pipeline halts.

Готовься к собесу аналитика как в Duolingo
10 минут в день — SQL, Python, A/B, метрики. 1700+ вопросов в Telegram
Открыть Карьерник в Telegram

Kubernetes Executor

# каждая task spawns its own pod
executor_config={
    "pod_override": k8s.V1Pod(
        spec=k8s.V1PodSpec(
            containers=[k8s.V1Container(
                name="base",
                image="ml-task-image:v1.2",
                resources=...
            )]
        )
    )
}

Pros:

  • Resource isolation per task.
  • Different images / dependencies для разных tasks.
  • Auto-scaling через k8s.

Cons:

  • Pod startup time (10-60s overhead).
  • k8s expertise required.

Managed services

Astronomer. Managed Airflow.

AWS MWAA (Managed Workflows for Apache Airflow).

GCP Cloud Composer.

Azure Data Factory — не Airflow, но similar.

В РФ: чаще self-hosted на Yandex Cloud / VK Cloud / on-prem k8s.

Альтернативы Airflow:

  • Dagster. Modern, asset-centric.
  • Prefect. Python-native, simpler.
  • Argo Workflows. k8s-native.
  • Apache Beam. Unified batch / streaming.

Связанные темы

FAQ

Сколько workers?

Зависит от concurrency. Эмпирика: parallelism = workers × parallelism per worker. Start с 4-8 workers, scale.

Это официальная информация?

Нет. Статья основана на документации Airflow 2.7+.


Тренируйте Data Engineering — откройте тренажёр с 1500+ вопросами для собесов.