Learning Platform
Глоссарий Troubleshooting
Урок 03.03 · 17 мин
Начальный
dbt-coredbt-clouddbt-fusionecosystem

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.7Stable 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)
WARNING

В 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 делает иначе:

  1. Парсинг проекта — в Rust, в десятки раз быстрее. Большие проекты (1000+ моделей) парсятся за секунды, а не минуты.
  2. SQL компиляция — через sqlparser-rs, без Python runtime
  3. CLI — тот же dbt run, но на Rust-binary
  4. Адаптеры — отдельный 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: тот же синтаксис, та же стандартная библиотека
NOTE

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:

  1. Web IDE — браузерный редактор для dbt-моделей с автокомплитом, lineage view, превью SQL компиляции
  2. Job scheduler — cron-like шедулер dbt build без необходимости поднимать Airflow
  3. Explorer — lineage UI с фильтрами, ownership, tags
  4. Metrics / Semantic Layer — определение метрик в YAML с автогенерацией SQL для BI
  5. Defer — CI запускается без полного rebuild, используя prod-артефакты как baseline
  6. API — REST API для интеграций (Airflow, custom CI)

Тарифы (упрощённо, по состоянию на 2026):

TierЦенаЧто включено
Free Developer$01 developer seat, 1 deployment environment, IDE, Jobs
Team~$100/seat/monthMulti-seat, more environments, scheduler
EnterpriseCustomSSO, audit logs, dbt Mesh full features, support
WARNING

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-snowflake
  • dbt-bigquery
  • dbt-redshift
  • dbt-databricks
  • dbt-postgres

Community-адаптеры:

  • dbt-duckdb — для DuckDB и MotherDuck (используется в этом курсе)
  • dbt-trino
  • dbt-clickhouse
  • dbt-athena
  • dbt-glue
  • dbt-sqlserver / dbt-fabric
  • dbt-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 модели.
ElementaryAnomaly 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

dbt-стек в 2026 году
dbt-core 1.10Open-source Python framework. Текущий stable на май 2026. Базовая реализация, используется в курсе.
dbt Fusion engineRust-based реализация того же public API. GA Coalesce 2025. Куда движется dbt Labs.
общий public API
Adaptersdbt-snowflake / dbt-bigquery / dbt-duckdb / dbt-postgres / ...
WarehouseSnowflake, BigQuery, Redshift, Databricks, DuckDB — место, где живут таблицы
extends
Packagesdbt_utils, dbt_expectations, Elementary, dbt_artifacts, codegen — экосистема через `dbt deps`
dbt Cloud / StudioSaaS-управление: IDE, scheduler, Explorer, Semantic Layer. Free Developer tier для одного человека.
Cosmos / AirflowAirflow + dbt: Cosmos разворачивает dbt-DAG как Airflow tasks. Самый частый production-сетап.

Тренды и куда смотреть в 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 должен унести из этого урока

  1. dbt-core 1.10 — это база. На ней работает этот курс, на ней работает 95% production-проектов в 2026.
  2. Fusion engine — знать, что есть. Не торопиться переходить. Public API один.
  3. dbt Cloud — managed-вариант с IDE, scheduler, Explorer. DuckDB официально не поддерживает. Free Developer tier — на одного.
  4. Adapter — Python-пакет, который связывает dbt с warehouse. Один adapter на warehouse. DuckDB через dbt-duckdb.
  5. dbt_utils — must-have пакет. В каждом серьёзном проекте.
  6. 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 вы понимаете, а что — нет? Темы, которые не понимаете, появятся в следующих модулях курса.


Проверка знанийKnowledge check
В чём ключевое различие между dbt-core и dbt Fusion engine, и почему junior рекомендуется учиться именно на dbt-core 1.10?
ОтветAnswer
dbt-core — это оригинальная Python-реализация dbt engine, open-source под Apache 2.0, текущая стабильная версия 1.10 на май 2026. dbt Fusion engine — это Rust-based реализация того же public API от dbt Labs, дошедшая до GA на Coalesce 2025. Ключевое различие: язык реализации и скорость (Fusion парсит/компилирует проекты в десятки раз быстрее, особенно ценно для проектов с 1000+ моделей). Public API одинаков: 'ref()', 'source()', dbt_project.yml, materializations, Jinja — всё совместимо. Junior рекомендуется учиться на dbt-core 1.10 потому, что: (1) экосистема пакетов (dbt_utils, Elementary, dbt-duckdb) пока заточена под dbt-core; (2) большинство production-проектов в 2026 ещё на dbt-core; (3) все туториалы и документация написаны для core; (4) для малых проектов разница в скорости незаметна. После курса переход на Fusion будет минимальной адаптацией — API тот же.

Проверьте понимание

Результат: 0 из 0
Прикладной
Вопрос 1 из 6. Какая версия dbt-core текущий stable на май 2026 и что в ней нового по сравнению с 1.9?

Закончили урок?

Отметьте его как пройденный, чтобы отслеживать свой прогресс

Войдите чтобы оценить урок

Прогресс модуля
0 из 3