dbtdata engineeringSQLmodern data stackаналитик данных
dbt для аналитика 2026: первые шаги — models, tests, lineage
2026-05-3012 мин
dbt (data build tool) — стандарт modern data stack для трансформаций в DWH. Если в 2024 ты писал SQL руками и складывал результаты через cron, в 2026 ты пишешь dbt-модели и получаешь lineage, тесты и документацию бесплатно. Airflow ставит расписание, dbt управляет трансформациями.
Этот гайд — за час дойдёшь от нуля до первой production-модели с тестами и snapshot'ами SCD2. Реальные примеры из аналитики маркетплейса и SaaS.
Что узнаешь
Чем dbt отличается от Airflow и почему их используют вместе
Setup dbt Cloud / dbt Core за 30 минут
Структура проекта: staging → intermediate → marts (Kimball)
Incremental models — обработка только новых данных
Tests, snapshots, sources, ref — главные концепции
Lineage graph — визуализация зависимостей
Шаг 1: Что такое dbt и зачем он аналитику
dbt — фреймворк трансформаций "T в ELT". Сырые данные уже в Snowflake/BigQuery/ClickHouse (E+L загрузил Fivetran/Airbyte). dbt отвечает за T — превращение raw → marts.
Источники → Fivetran (EL) → DWH raw schema
↓
dbt (T) — твоя зона ответственности
↓
Marts → BI / ML / эксперименты
Vs Airflow: Airflow оркестрирует расписание (запусти dbt job в 6:00). dbt управляет SQL-логикой (что и в каком порядке). Они не конкуренты, а дополняют друг друга.
Vs голый SQL: dbt даёт версионирование (Git), тесты, документацию, lineage. SQL в Confluence-страничках = головная боль через 6 месяцев. dbt-проект через 6 месяцев — всё ещё понятный код с тестами.
dbt сам добавит колонки dbt_valid_from, dbt_valid_to, dbt_scd_id. История изменений готова.
Query «какой tier был у юзера на момент покупки»:
select o.order_id, u.subscription_tier
from {{ ref('orders') }} o
join {{ ref('users_snapshot') }} u
on o.user_id = u.id
and o.order_time between u.dbt_valid_from andcoalesce(u.dbt_valid_to,'9999-12-31')
Шаг 8: Lineage + docs
dbt docs generate
dbt docs serve # localhost:8080
Получаешь интерактивный граф зависимостей. Когда команда менеджит 200+ моделей, lineage спасает от «случайно сломали 50 дашбордов».
FAQ
Что лучше: dbt Core или dbt Cloud?
Cloud — если команда <10 человек и не хочется DevOps. Core — если нужна интеграция с Airflow, GitLab CI, кастомные runtimes.
dbt заменяет Airflow?
Нет. dbt — трансформации. Airflow — оркестрация (запусти dbt в 6:00, потом отчёт в Slack). В зрелом стэке оба.