Поддерживаемые функции
Узнайте, какие возможности поддерживает движок dbt Fusion, а также о требованиях и ограничениях.
Требования
Чтобы использовать Fusion в вашем dbt-проекте:
- Вы используете поддерживаемый адаптер и метод аутентификации:
- В проекте определены только SQL-модели. Python-модели в настоящее время не поддерживаются, так как Fusion не может анализировать их для извлечения зависимостей (refs) от других моделей.
Паритет с dbt Core
Наша цель — чтобы dbt Fusion Engine поддерживал все возможности фреймворка dbt Core, и даже больше. Fusion уже поддерживает многие возможности dbt Core версии 1.9, и мы активно работаем над добавлением остальных.
Обратите внимание, что мы удалили некоторые устаревшие функции и внедрили более строгую валидацию ошибочного кода проекта. Подробности см. в руководстве по обновлению.
Возможности и функциональность
dbt Fusion Engine (построенный на Rust) обеспечивает до 30× более высокую производительность и предлагает разные возможности в зависимости от того, где вы его используете.
- Он лежит в основе как улучшений на уровне движка (например, более быстрая компиляция и инкрементальные сборки), так и функций на уровне редактора (таких как IntelliSense, подсказки при наведении и встроенные ошибки) через LSP в расширении dbt для VS Code.
- Подробнее о возможностях LSP, поддерживаемых в рамках dbt platform, см. в разделе About dbt LSP.
- Чтобы быть в курсе последних возможностей и обновлений, следите за Fusion diaries.
dbt Core (построенный на Python) поддерживает SQL rendering, но не включает парсинг SQL и современные функции редактора, которые реализованы с помощью dbt Fusion Engine и LSP.
Клиенты dbt platform, использующие Fusion, могут разрабатывать на нескольких рабочих поверхностях, включая Studio IDE и VS Code с расширением dbt.
Возможности dbt platform features (такие как Advanced CI, dbt Mesh, State-aware orchestration и другие) доступны независимо от того, какую среду разработки вы используете, в зависимости от вашего тарифного плана dbt.
Если вы не уверены, какие функции доступны в Fusion, расширении dbt для VS Code, Fusion-CLI и других инструментах, следующая таблица фокусируется на возможностях, работающих на базе Fusion.
В этой таблице self-hosted означает, что решение является open-source/source-available и работает в вашей собственной инфраструктуре; dbt platform размещается и поддерживается dbt Labs и включает функции уровня платформы.
✅ = Доступно | 🟡 = Частично / только на этапе компиляции | ❌ = Недоступно | Скоро = Пока недоступно
| Loading table... |
1 Поддержка других возможностей dbt platform и LSP, таких как Canvas, Semantic Layer или column-level lineage, появится в ближайшее время. См. About LSP для более подробного сравнения сред разработки dbt.
2 Расширение dbt для VS Code можно использовать в VS Code, Cursor, Windsurf и других редакторах на базе VS Code.
Дополнительные соображения
Ниже приведены дополнительные моменты, которые стоит учитывать при использовании Fusion CLI без расширения VS Code или расширения VS Code без Fusion CLI:
- Fusion CLI (binary)
- Бесплатен в использовании и работает на dbt Fusion Engine (отличается от dbt Core).
- Использует преимущества производительности Fusion engine для
parse,compile,buildиrun, но не включает возможности LSP features, такие как автодополнение, подсказки при наведении, lineage и другие. - Требует только
profiles.yml(файлdbt_cloud.ymlне нужен).
- dbt VS Code extension
- Бесплатно, работает на dbt Fusion Engine; необходимо зарегистрировать email в течение 14 дней.
- Использует преимущества производительности Fusion engine для
parse,compile,buildиrun, а также включает возможности LSP features, такие как автодополнение, подсказки при наведении, lineage и другие. - Ограничение — до 15 пользователей на организацию. Подробнее см. в acceptable use policy.
- Если у вас уже есть учетная запись dbt platform (даже если пробный период истек), войдите с тем же email. При необходимости разблокируйте или сбросьте учетную запись.
- Требуются файлы
profiles.ymlиdbt_cloud.yml.
Ограничения
Если ваш проект использует какие-либо из функций, перечисленных в таблице ниже, вы можете использовать Fusion, но не сможете полностью перенести все рабочие нагрузки, так как у вас есть:
- Модели, использующие специфические возможности materialization, которые могут не запускаться или не поддерживать некоторые желаемые настройки.
- Инструменты, ожидающие точный формат логов dbt Core. Система логирования Fusion в настоящее время нестабильна и не завершена.
- Процессы, построенные вокруг дополнительных возможностей dbt platform (таких как уведомления на уровне моделей, Advanced CI и Semantic Layer), которые Fusion пока не поддерживает.
- При использовании расширения dbt VS Code в Cursor визуализация lineage лучше всего работает в режиме Editor и не отображается в режиме Agent. Если вы работаете в режиме Agent и вам нужно посмотреть lineage, переключитесь в режим Editor, чтобы получить доступ к полной функциональности вкладки lineage.
Мы активно внедряем многие из этих возможностей в преддверии General Availability. Подробнее читайте о пути к GA и отслеживайте прогресс в dbt-fusion milestones.
| Loading table... |
Поддержка пакетов
Чтобы определить, совместим ли пакет с dbt Fusion Engine, посетите dbt package hub и найдите бейдж совместимости с Fusion, либо изучите конфигурацию пакета require-dbt-version.
-
Пакеты с
require-dbt-version, который равен2.0.0или включает его, совместимы с Fusion. Например:require-dbt-version: ">=1.10.0,<3.0.0".Даже если пакет не отражает совместимость в package hub, он всё равно может работать с Fusion. Рекомендуется взаимодействовать с мейнтейнерами пакета, чтобы отслеживать обновления, и тщательно тестировать пакеты, совместимость которых не очевидна, перед развертыванием.
-
Мейнтейнеры пакетов, которые хотят сделать свой пакет совместимым с Fusion, могут обратиться к руководству по обновлению пакетов для Fusion с подробными инструкциями.
Особенности пакетов Fivetran:
- Пакеты Fivetran
sourceиtransformationбыли объединены в один пакет. - Если вы устанавливали source-пакеты вручную, например
fivetran/github_source, необходимо убедиться, что установленfivetran/github, и отключить модели трансформации.
Сообщения о совместимости пакетов
dbt-autofixПредупреждения Fusion и логи dbt-autofix могут содержать разные сообщения о совместимости пакетов.
Если вы используете dbt-autofix при обновлении до Fusion в Studio IDE или в расширении dbt для VS Code, вы можете увидеть различающиеся сообщения о совместимости пакетов между dbt-autofix и предупреждениями Fusion.
Вот почему это происходит:
- Предупреждения Fusion формируются на основе параметра пакета
require-dbt-versionи того, содержит лиrequire-dbt-versionверсию2.0.0. - Некоторые пакеты уже совместимы с Fusion, даже если их мейнтейнеры ещё не обновили значение
require-dbt-version. dbt-autofixзнает о таких совместимых пакетах и не пытается обновлять пакет, если он уже считается совместимым.
Это означает, что даже если вы видите предупреждение Fusion для пакета, который dbt-autofix определяет как совместимый, вам не нужно менять этот пакет.
Расхождение в сообщениях является временным и будет устранено по мере внедрения и распространения улучшенного механизма определения совместимости из dbt-autofix в предупреждениях Fusion.
Ниже приведён пример предупреждения Fusion в Studio IDE, которое сообщает, что пакет не совместим с Fusion, тогда как dbt-autofix указывает, что он совместим:
dbt1065: Package 'dbt_utils' requires dbt version [>=1.30,<2.0.0], but current version is 2.0.0-preview.72. This package may not be compatible with your dbt version. dbt(1065) [Ln 1, Col 1]
Дополнительная информация о Fusion
Fusion — это значительное обновление dbt. Хотя многие рабочие процессы, к которым вы привыкли, остаются без изменений, появляется множество новых идей, а также происходит отказ от ряда старых подходов. Ниже приведён список, охватывающий полный объём текущего релиза движка Fusion, включая вопросы реализации, установки, устаревших возможностей и ограничений:
- О движке dbt Fusion
- О расширении dbt
- Новые концепции в Fusion
- Матрица поддерживаемых возможностей
- Установка Fusion CLI
- Установка расширения VS Code
- Трек релизов Fusion
- Быстрый старт для Fusion
- Руководство по обновлению
- Лицензирование Fusion