Airflow
Properties
tags
cscs/data_eng
created
14.03.2026, 00:00
modified
26.07.2026, 10:46
published
Empty
sources
Apache Airflow Documentation
topics
Workflow Orchestration, DAGs, Executors
authors
Empty
ai-assisted
Yes
- Apache Airflow is an open-source workflow orchestration platform for authoring, scheduling, and monitoring data pipelines. Pipelines are defined as DAGs (Directed Acyclic Graphs) in Python — code is the source of truth.
- Originally created at Airbnb (2014), donated to Apache in 2016.
# Core Concepts
# DAG (Directed Acyclic Graph)
- A DAG is a Python file defining a collection of tasks and their dependencies. Tasks flow in one direction — no cycles.
| |
# Tasks & Operators
- A Task is a unit of work. An Operator defines what it does:
PythonOperator— run a Python callableBashOperator— run a shell commandPostgresOperator— execute SQLKubernetesPodOperator— spin up a k8s podDbtTaskGroup— run dbt models (viaairflow-dbtorastronomer-cosmos)
# Scheduler
- The Scheduler continuously parses DAG files, triggers tasks when dependencies are met, and submits them to the Executor.
# Executor
- Executors control how and where tasks run:
| Executor | Description |
|---|---|
SequentialExecutor | One task at a time; dev/testing only |
LocalExecutor | Parallel tasks on the same machine |
CeleryExecutor | Distributes tasks to Celery workers; needs Redis/RabbitMQ as broker |
KubernetesExecutor | Each task runs in its own k8s pod; fully ephemeral |
CeleryKubernetesExecutor | Hybrid: some tasks on Celery, heavy tasks on k8s pods |
# Integration with dbt
- dbt handles SQL transformations; Airflow orchestrates when they run.
| |
Or use astronomer-cosmos for a richer integration that maps each dbt model to an Airflow task:
| |