dbt landscape 2026
Этот урок — карта местности. После него вы будете понимать, кто и что есть в мире dbt, и куда движется индустрия в 2026 году.
dbt-core: open-source ядро
dbt-core — open-source Python-проект от dbt Labs (раньше Fishtown Analytics). Это и есть то, что вы устанавливаете командой pip install dbt-core. Лицензия — Apache 2.0, репозиторий на GitHub: dbt-labs/dbt-core.
Релизный цикл dbt-core — минорные версии каждые 3-4 месяца. Текущий стабильный релиз на май 2026 — 1.10 (вышел в начале 2026). Предыдущие:
| Версия | Что принесла |
|---|---|
| 1.6 (2023) | dbt Mesh: cross-project refs ({{ ref('analytics', 'orders') }}), groups, model access |
| 1.7 | Stable contracts, contracts на columns |
| 1.8 (2024) | Unit tests GA, defer для CI без warehouse |
| 1.9 (2025) | Microbatch incremental strategy GA, snapshots в YAML |
| 1.10 (2026) | YAML anchors, --sample флаг, верхне-уровневые свойства теперь под config:, deprecation -m (используйте --select) |
В 1.10 несколько deprecation, которые ловят джунов. Самые частые: верхне-уровневые freshness/meta/tags/docs/group/access в YAML теперь должны быть под config:. Custom user-properties без meta: тоже выдают warning. Флаг -m заменён на --select. Если ваш курс/туториал старше 2025 года — он скорее всего использует устаревший синтаксис.
dbt-core — это:
- CLI инструмент:
dbt run,dbt test,dbt compile,dbt docs serveи так далее - Python framework: можно встраивать dbt-core программно через
dbtRunner - Adapter abstraction: разные warehouse через отдельные пакеты (
dbt-snowflake,dbt-bigquery,dbt-duckdb,dbt-postgres)
dbt Fusion engine
dbt Fusion engine — это Rust-based реализация dbt engine от dbt Labs. Объявлен в публичной beta 28 мая 2025, дошёл до GA на Coalesce 2025 (октябрь 2025). По состоянию на май 2026 — рекомендованная dbt Labs реализация для новых проектов.
Что Fusion делает иначе:
- Парсинг проекта — в Rust, в десятки раз быстрее. Большие проекты (1000+ моделей) парсятся за секунды, а не минуты.
- SQL компиляция — через
sqlparser-rs, без Python runtime - CLI — тот же
dbt run, но на Rust-binary - Адаптеры — отдельный Rust-API; адаптеры под Snowflake / BigQuery / Redshift / Databricks портированы дbt Labs, community-адаптеры догоняют
Что Fusion не меняет:
- Public API:
ref(),source(),var(),env_var(),{{ config() }}, materialization names — всё совместимо - Project structure: те же папки models/, seeds/, tests/, macros/, snapshots/, dbt_project.yml
- YAML format: те же sources, tests, exposures
- Jinja: тот же синтаксис, та же стандартная библиотека
Junior уровень: знайте, что Fusion есть, но не торопитесь переходить. dbt-core 1.10 — стабильная база. Fusion даёт ускорение парсинга и компиляции, что особенно ценно для больших проектов и CI; для малого проекта с 50 моделями разница незаметна.
Открытые вопросы Fusion (на май 2026):
- Community adapters: dbt-duckdb v1.10.1 пока работает только на dbt-core. Fusion-версия в разработке.
- Python models: ограниченная поддержка через bridge
- Custom Python pre-hooks: пока через embedded Python
Если выбираете между dbt-core 1.10 и Fusion для junior-проекта: берите dbt-core 1.10. Все туториалы курса работают на нём, экосистема пакетов (dbt_utils, dbt_expectations, Elementary) — тоже на нём.
dbt Cloud (теперь Studio)
dbt Cloud — это SaaS-продукт от dbt Labs. С 2024-2025 годов часть продукта называется dbt Studio (IDE-часть). В 2026 году ребрендинг продолжается, но это всё ещё «cloud-managed dbt».
Что входит в dbt Cloud / Studio:
- Web IDE — браузерный редактор для dbt-моделей с автокомплитом, lineage view, превью SQL компиляции
- Job scheduler — cron-like шедулер
dbt buildбез необходимости поднимать Airflow - Explorer — lineage UI с фильтрами, ownership, tags
- Metrics / Semantic Layer — определение метрик в YAML с автогенерацией SQL для BI
- Defer — CI запускается без полного rebuild, используя prod-артефакты как baseline
- API — REST API для интеграций (Airflow, custom CI)
Тарифы (упрощённо, по состоянию на 2026):
| Tier | Цена | Что включено |
|---|---|---|
| Free Developer | $0 | 1 developer seat, 1 deployment environment, IDE, Jobs |
| Team | ~$100/seat/month | Multi-seat, more environments, scheduler |
| Enterprise | Custom | SSO, audit logs, dbt Mesh full features, support |
dbt Cloud НЕ поддерживает DuckDB официально. Это известное ограничение. dbt-duckdb работает локально и через self-hosted шедулер, но в Cloud его не подключить. Если выбираете Cloud — выбирайте Snowflake / BigQuery / Redshift / Databricks / Postgres.
Junior уровень: Cloud полезно знать, но не обязательно для начала. На бесплатном Developer tier можно подключить Postgres и поиграться с IDE-фичами и lineage view — это даст представление о том, как живёт проект в Cloud.
Адаптеры
Adapter — это Python-пакет, который переводит dbt-абстракции (materialization, source, test) в SQL конкретного warehouse. Один adapter на warehouse.
Официальные адаптеры от dbt Labs:
dbt-snowflakedbt-bigquerydbt-redshiftdbt-databricksdbt-postgres
Community-адаптеры:
dbt-duckdb— для DuckDB и MotherDuck (используется в этом курсе)dbt-trinodbt-clickhousedbt-athenadbt-gluedbt-sqlserver/dbt-fabricdbt-oracle
Полный список — https://docs.getdbt.com/docs/connect-adapters.
Каждый adapter поддерживает разный набор материализаций. DuckDB не поддерживает materialized_view, BigQuery не поддерживает constraints на view, и так далее. Это всегда нужно проверять в docs adapter’а.
Экосистема пакетов
Поверх dbt-core построена экосистема Python-style пакетов на Jinja+SQL. Они устанавливаются через dbt deps и подключаются в packages.yml.
Топ-5 пакетов, которые встретите везде:
| Пакет | Что даёт |
|---|---|
| dbt_utils | Универсальные макросы: generate_surrogate_key, star, pivot, unpivot, safe_add, date_spine, get_column_values. Must-have для любого проекта. |
| dbt_expectations | Тесты в стиле great_expectations: expect_column_values_to_be_between, expect_column_pair_values_to_be_in_set. Расширяет дефолтные generic-тесты. |
| dbt_artifacts | Парсит manifest.json / run_results.json в таблицы внутри warehouse, чтобы делать observability и метрики по проекту. |
| codegen | Генерирует boilerplate: YAML для sources из информационной схемы warehouse, базовый skeleton модели. |
| Elementary | Anomaly detection и data observability поверх dbt. Шлёт alerts в Slack, имеет UI dashboards. |
Cosmos (от Astronomer) — отдельная категория: это обёртка для Airflow, которая разворачивает dbt-DAG как Airflow tasks. То есть не «пакет dbt» в обычном смысле, а интеграция Airflow с dbt.
Apache Airflow: обзор оркестратора, с которым dbt чаще всего работает вместеГайд по поиску пакетов: hub.getdbt.com — официальный registry dbt-пакетов.
Общая картина 2026
Тренды и куда смотреть в 2026
Три направления, на которые стоит обращать внимание (но junior может пропустить):
1. dbt Mesh — cross-project references. Большая компания делит dbt на несколько проектов (по domain): core_models, marketing, finance. Один проект ссылается на другой через {{ ref('marketing', 'mart_campaigns') }}. Это решает проблему монорепо в 1000+ моделей.
2. Semantic Layer — определение метрик (gross_revenue, MRR, active_customers) в YAML с автогенерацией SQL для BI. Идея — «одно определение метрики на всё», переиспользуемое в Tableau / Looker / dashboards.
3. Unit tests + contracts — движение к software engineering практикам: unit тесты с given/expect блоками, контракты на колонки и типы. В 1.8 unit tests стали GA, в 1.10 расширены.
4. Fusion engine adoption — переход больших проектов с Python на Rust. На горизонте 2026-2027 года Fusion станет default’ом, dbt-core останется как «классическая Python-реализация».
dbt Cloud vs dbt Core: что Cloud даёт сверху и когда платить5. AI / LLM в dbt-стеке — dbt Cloud экспериментирует с AI-функциями: автогенерация моделей из source-таблиц, объяснение моделей через embeddings. На junior это не влияет напрямую.
Что junior должен унести из этого урока
- dbt-core 1.10 — это база. На ней работает этот курс, на ней работает 95% production-проектов в 2026.
- Fusion engine — знать, что есть. Не торопиться переходить. Public API один.
- dbt Cloud — managed-вариант с IDE, scheduler, Explorer. DuckDB официально не поддерживает. Free Developer tier — на одного.
- Adapter — Python-пакет, который связывает dbt с warehouse. Один adapter на warehouse. DuckDB через
dbt-duckdb. - dbt_utils — must-have пакет. В каждом серьёзном проекте.
- Production-сетап обычно = dbt-core + Cosmos/Airflow + warehouse + dbt_utils + Elementary.
Попробуй сам
Откройте https://hub.getdbt.com и посмотрите список топ-10 самых популярных пакетов. Какие из них вы уже узнаёте по этому уроку? Откройте репозиторий dbt-labs/dbt-utils на GitHub и посмотрите список макросов в macros/ — это будущая ваша палитра инструментов.
Дополнительно: откройте https://github.com/dbt-labs/dbt-core/releases и посмотрите changelog 1.9 -> 1.10. Что из перечисленного в release notes вы понимаете, а что — нет? Темы, которые не понимаете, появятся в следующих модулях курса.