| Параметр | Dbt | Airflow |
|---|---|---|
| Фокус | dbt: SQL transformation | Airflow: любая orchestration |
| Где работает | dbt: внутри warehouse | Airflow: снаружи (Python) |
| Язык | dbt: SQL + Jinja | Airflow: Python (DAG как код) |
| Scheduling | dbt: нет (через Airflow/Prefect/dbt Cloud) | Airflow: cron + сложные расписания |
| Tests | dbt: data tests (SQL) | Airflow: unit-tests кода + assertions |
| Lineage | dbt: авто из SQL ref() | Airflow: через DAG-структуру |
| Documentation | dbt: автогенерация | Airflow: нужно вручную |
| Materialization | dbt: view/table/incremental | Airflow: что напишешь в Python |
| Кривая обучения | dbt: 1-2 недели (если знаешь SQL) | Airflow: 2-4 недели (нужны Python + DAG-mental-model) |
dbt — проще и быстрее даёт value. Если знаешь SQL, освоишь за 1-2 недели. Airflow — следующий шаг после dbt, требует Python и DAG-mental-model.
Нет. dbt только для SQL-transformation. Airflow для всего остального: extract из API, ML training, file processing, notifications. Они работают в связке: Airflow orchestrates, dbt does SQL.
Airflow DAG: 1) Extract from API → S3 (Python operator), 2) Load S3 → Snowflake, 3) `dbt run` для transformation, 4) `dbt test` для проверки качества, 5) Notify Slack. Каждый шаг — отдельный task.
Prefect (3 — современный orchestrator), Dagster (native dbt integration), Mage (low-code), Temporal (для durable workflows). Airflow всё ещё стандарт enterprise.
Postgresql vs Clickhouse · Pandas vs Polars · Tableau vs Powerbi Datalens Superset · SQL vs Pandas