Перейти к основному содержимому

Быстрый старт для движка dbt Fusion

dbt Fusion engine
dbt Cloud
Quickstart
Beginner
Menu

    Введение

    important

    dbt Fusion Engine в настоящее время доступен для установки в следующих вариантах:

    Присоединяйтесь к обсуждению в нашем Slack‑сообществе в канале #dbt-fusion-engine.

    Читайте Fusion Diaries, чтобы быть в курсе последних обновлений.

    dbt Fusion Engine — это мощный новый взгляд на классические идеи dbt! Полностью переписанный с нуля на Rust, Fusion позволяет компилировать и запускать dbt‑проекты быстрее, чем когда-либо раньше — часто за считанные секунды.

    Этот краткий старт поможет вам пройти путь от нуля до запуска вашего первого dbt‑проекта с использованием Fusion и VS Code. В результате у вас будет:

    • Рабочий dbt‑проект (jaffle_shop), собранный с помощью dbt Fusion Engine
    • Установленное и подключённое расширение dbt для VS Code
    • Возможность просматривать данные, компилировать и запускать dbt‑команды прямо из IDE

    О движке dbt Fusion

    Fusion и предоставляемые им возможности доступны в нескольких средах:

    СредаКак использовать Fusion
    Studio IDEFusion включён автоматически; просто обновите окружение.
    dbt CLI (локально)Установите dbt Fusion Engine локально, следуя этому руководству.
    VS Code / Cursor IDEУстановите расширение dbt, чтобы раскрыть интерактивные возможности Fusion прямо в редакторе.
    Loading table...

    Подробнее о том, какой инструмент лучше подойдёт именно вам, читайте на странице Fusion availability. А чтобы узнать больше о самом dbt Fusion Engine и принципах его работы, ознакомьтесь с разделом о движке dbt Fusion.

    Предварительные требования

    Чтобы получить максимум от этого руководства, вам потребуется:

    • Базовое понимание dbt‑проектов, git‑процессов и требований к хранилищам данных.
    • Поддерживаемый адаптер и метод аутентификации:
       BigQuery
       Databricks
      • Служебная учетная запись / токен пользователя
      • Нативный OAuth
       Redshift
      • Имя пользователя / пароль
      • Профиль IAM
       Snowflake
      • Имя пользователя / пароль
      • Нативный OAuth
      • Внешний OAuth
      • Пара ключей с использованием современного метода PKCS#8
      • MFA
    • Компьютер с macOS (Terminal), Linux или Windows (PowerShell) для запуска dbt Fusion Engine.
    • Установленный Visual Studio Code. Редактор Cursor также подойдёт, но в инструкциях ниже используется VS Code.
    • Права администратора или возможность устанавливать программное обеспечение на машине.

    Чему вы научитесь

    Следуя этому руководству, вы:

    • Настроите полностью рабочее окружение dbt с функционирующим проектом
    • Установите и начнёте использовать dbt Fusion Engine и расширение dbt для VS Code
    • Научитесь запускать dbt‑команды из IDE или терминала
    • Сможете просматривать данные, анализировать lineage и быстрее писать SQL с автодополнением и другими возможностями

    Дополнительные материалы доступны в виде качественных курсов и воркшопов dbt Learn.

    Установка

    Можно подумать, что dbt Fusion Engine и расширение dbt — это два отдельных продукта, но на самом деле они образуют мощную связку, раскрывающую весь потенциал dbt. dbt Fusion Engine — это, по сути, двигатель. Расширение dbt и VS Code — это шасси, и вместе они образуют мощный инструмент для трансформации данных.

    к сведению
    • Вы можете установить dbt Fusion Engine и использовать его отдельно через CLI.
    • Использовать расширение dbt без установленного Fusion нельзя.

    Ниже приведены основные шаги из руководств по установке dbt Fusion Engine и расширения:

    1. Выполните следующую команду в терминале, чтобы установить бинарный файл dbtf — CLI‑команду Fusion:
      curl -fsSL https://public.cdn.getdbt.com/fs/install/install.sh | sh -s -- --update
    2. Чтобы сразу начать использовать dbtf, перезагрузите оболочку, чтобы обновлённый $PATH был распознан:
      exec $SHELL
      Либо просто закройте и заново откройте окно терминала — это загрузит обновлённые переменные окружения.

    Проверка установки dbt Fusion Engine

    1. После установки откройте новое окно командной строки и проверьте, что Fusion установлен корректно, запросив версию:
      dbtf --version
    2. Вы должны увидеть вывод, похожий на следующий:
      dbt-fusion 2.0.0-preview.45
    подсказка

    Вы можете запускать эти команды с помощью dbt или использовать dbtf как однозначный алиас для Fusion, если на машине установлен другой dbt CLI.

    Установка расширения dbt для VS Code

    Расширение dbt для VS Code доступно в Visual Studio extension marketplace. Его можно установить прямо из редактора:

    1. Перейдите на вкладку Extensions в VS Code (или Cursor).
    2. Найдите dbt и выберите расширение от издателя dbt Labs Inc.
      Найдите расширениеНайдите расширение
    3. Нажмите Install.
    4. При появлении запроса вы можете зарегистрировать расширение сразу или пропустить этот шаг (к нему можно вернуться позже). Также вы можете ознакомиться с инструкциями по установке.
    5. Убедитесь, что расширение установлено: в строке состояния должен появиться индикатор dbt Extension.
      Проверьте установку в строке состояния.Проверьте установку в строке состояния.

    Инициализация проекта Jaffle Shop

    Теперь создадим ваш первый dbt‑проект на базе Fusion!

    1. Запустите dbt init, чтобы создать пример проекта и настроить профиль подключения к базе данных.

      • Если у вас нет готового профиля подключения, используйте dbt init и настройте его через интерактивные подсказки.

      • Если профиль уже есть, используйте флаг --skip-profile-setup, а затем отредактируйте сгенерированный dbt_project.yml, заменив profile: jaffle_shop на profile: <YOUR-PROFILE-NAME>.

        dbtf init --skip-profile-setup
      • Если вы создали новые учётные данные через интерактивные подсказки, команда init автоматически запустит dbtf debug в конце, чтобы проверить корректность подключения.

    2. Перейдите в каталог созданного проекта:

      cd jaffle_shop
    3. Соберите dbt‑проект (включая создание примерных данных):

      dbtf build

    В процессе будет выполнено:

    • Загрузка примерных данных в хранилище
    • Создание, сборка и тестирование моделей
    • Проверка того, что окружение dbt полностью работоспособно

    Изучение возможностей с расширением dbt для VS Code

    Расширение dbt для VS Code компилирует и собирает проект с помощью dbt Fusion Engine — сверхбыстрой, полностью переработанной реализации dbt.

    Хотите увидеть Fusion в действии? Посмотрите следующее видео‑демо, чтобы понять, как это работает:

    Когда проект готов, откройте его в VS Code и посмотрите Fusion в работе:

    1. В VS Code откройте меню View и выберите Command Palette. Введите Workspaces: Add Folder to Workspace.
    2. Выберите папку jaffle_shop. Если вы не добавите корневую папку dbt‑проекта в workspace, dbt language server (LSP) не запустится. Именно LSP обеспечивает автодополнение, подсказки при наведении и встроенные подсветки ошибок.
    3. Откройте файл модели, чтобы увидеть определение модели orders — именно её мы будем использовать в примерах ниже.
          models/marts/orders.sql
    4. В нижней панели найдите Lineage и Query Results, а в правом верхнем углу — иконку dbt. Если всё это отображается, расширение установлено и работает корректно!
      Интерфейс VS Code с запущенным расширением.Интерфейс VS Code с запущенным расширением.

    Теперь вы готовы попробовать эти возможности на практике!

    Просмотр данных и кода

    Получайте полезные инсайты о трансформации данных на каждом этапе разработки.
    Вы можете быстро просматривать результаты моделей и структуру данных прямо из кода. Это помогает поэтапно проверять корректность логики.

    1. Найдите иконку таблицы для Preview File в правом верхнем углу и нажмите на неё, чтобы увидеть результаты во вкладке Query Results.
      Просмотр результатов запроса модели.Просмотр результатов запроса модели.
    2. Нажмите Preview CTE над orders as (, чтобы посмотреть результаты CTE во вкладке Query Results.
      Просмотр результатов запроса CTE.Просмотр результатов запроса CTE.
    3. Найдите иконку Compile File между иконками dbt и таблицы. Нажатие открывает окно с скомпилированной версией модели.
      Иконка Compile File.Иконка Compile File.
      Результаты Compile File.Результаты Compile File.

    Понимание того, откуда пришли данные, почти так же важно, как и понимание того, куда они идут. Инструменты lineage позволяют визуализировать зависимости между моделями и на уровне отдельных колонок, углубляя понимание структуры проекта.

    1. Откройте вкладку Lineage, чтобы увидеть lineage на уровне моделей.
      Визуализация lineage на уровне моделей.Визуализация lineage на уровне моделей.
    2. Откройте меню View, выберите Command Palette и введите dbt: Show Column Lineage, чтобы увидеть lineage на уровне колонок во вкладке Lineage.
      Показ lineage на уровне колонок.Показ lineage на уровне колонок.

    Использование понимания SQL

    Пишите код умнее, а не сложнее. Автодополнение и контекстные подсказки помогают избегать ошибок и быстрее создавать корректный SQL.

    1. Чтобы увидеть Autocomplete в действии, удалите ref('stg_orders') и начните вводить ref(stg_, чтобы увидеть подходящие имена моделей. Используйте стрелки вверх и вниз, чтобы выбрать stg_orders.
      Автодополнение имени модели.Автодополнение имени модели.
    2. Наведите курсор на *, чтобы увидеть список выбираемых колонок и их типы данных.
      Наведение на * для просмотра имён колонок и типов данных.Наведение на * для просмотра имён колонок и типов данных.

    Ускорение стандартных dbt‑команд

    Тестирование, тестирование… микрофон включён? Да — и он готов выполнять ваши команды с молниеносной скоростью! Когда нужно проверить код с помощью различных dbt‑команд:

    1. Иконка dbt в правом верхнем углу открывает список команд, доступных через расширение:
      Выберите команду через иконку dbt.Выберите команду через иконку dbt.
    2. Если открыть меню View, выбрать Command Palette и ввести >dbt:, вы увидите полный список доступных команд.
      Команды dbt в командной строке.Команды dbt в командной строке.

    Попробуйте выбрать несколько команд и посмотрите, что они делают 😎

    Это только начало. Возможностей уже много, и впереди — ещё больше. Обязательно изучите наши материалы, чтобы узнать всё о dbt Fusion Engine и расширении dbt для VS Code!

    Устранение неполадок

    Если у вас возникли какие‑либо проблемы, ознакомьтесь с разделом устранения неполадок ниже.

     Как создать директорию .dbt в корне и переместить файл dbt_cloud.yml

    Если у вас ещё нет директории .dbt, рекомендуется выполнить следующие шаги, чтобы создать её. Если директория .dbt у вас уже есть, переместите файл dbt_cloud.yml внутрь неё. Ниже приведена справочная информация о директории .dbt:

    • Директория .dbt — это скрытая папка в корне вашей файловой системы. Она используется для хранения конфигурационных файлов dbt. Префикс . делает папку скрытой, поэтому по умолчанию она не отображается в Finder или File Explorer.
    • Чтобы увидеть скрытые файлы и папки, нажмите Command + Shift + G на macOS или Ctrl + Shift + G на Windows. Это откроет диалог «Go to Folder», в котором можно перейти к директории .dbt.
    1. Клонируйте репозиторий вашего dbt‑проекта локально.

    2. Используйте команду mkdir, указав имя папки, которую нужно создать.

      • Если вы используете macOS, добавьте префикс ~, чтобы создать папку .dbt в корне вашей файловой системы:
      mkdir ~/.dbt # macOS
      mkdir %USERPROFILE%\.dbt # Windows
     Я не вижу вкладку lineage в Cursor

    Если вы используете расширение dbt для VS Code в Cursor, вкладка lineage лучше всего работает в режиме Editor и не отображается в режиме Agent. Если вы находитесь в режиме Agent и вкладка lineage не рендерится, просто переключитесь в режим Editor, чтобы просмотреть lineage таблиц и колонок вашего проекта.

     Настройки dbt platform

    Если вы используете облачную платформу dbt, у вас есть конфигурация dbt-cloud: в файле dbt_project.yml, и при этом вы также используете dbt Mesh, необходимо указать ID проекта:

    dbt-cloud:
    project-id: 12345 # Required

    Если эта настройка указана некорректно, кросс‑платформенные ссылки не будут разрешаться, и при выполнении команд dbt будут возникать ошибки.

     Расширение dbt не активируется

    Если расширение dbt успешно активировалось, вы увидите метку dbt Extension в строке состояния в левом нижнем углу редактора. Диагностическую информацию о расширении dbt можно посмотреть, нажав на кнопку dbt Extension.

    Если метка dbt Extension отсутствует, скорее всего, расширение dbt не было установлено корректно. В этом случае попробуйте удалить расширение, перезапустить редактор и затем установить расширение заново.

    Примечание: В VS Code можно «скрывать» элементы строки состояния. Проверьте, не скрыта ли метка dbt Extension: щёлкните правой кнопкой мыши по строке состояния в редакторе. Если в контекстном меню присутствует dbt Extension, значит расширение было установлено успешно.

     Ошибка Missing dbt LSP features

    Если вы получаете сообщение об ошибке no active LSP for this workspace или не видите возможности dbt Language Server (LSP) в редакторе (например, автодополнение, переход к определению или всплывающие подсказки), сначала выполните общие шаги по устранению неполадок, описанные ранее.

    Если вы убедились, что расширение dbt установлено корректно, но функции LSP по‑прежнему отсутствуют, попробуйте следующее:

    1. Проверьте версию расширения — убедитесь, что вы используете последнюю доступную версию расширения dbt:
      • откройте страницу Extensions в редакторе, или
      • перейдите на вкладку Output и посмотрите номер версии, или
      • выполните команду dbtf --version в терминале.
    2. Переустановите LSP — если версия корректна, переустановите LSP:
      1. Откройте Command Palette: Command + Shift + P (macOS) или Ctrl + Shift + P (Windows/Linux).
      2. Введите dbt: Reinstall dbt LSP и нажмите Enter.

    Эта команда загрузит LSP и повторно активирует расширение, что должно устранить ошибку.

     Неподдерживаемая версия dbt

    Если вы видите сообщение об ошибке о том, что используемая версия dbt не поддерживается, скорее всего, проблема связана с вашим окружением.

    Проверьте настройку dbt Path в настройках VS Code. Если этот путь задан, убедитесь, что он указывает на корректный исполняемый файл dbt Fusion Engine.
    При необходимости вы также можете установить dbt Fusion Engine напрямую, следуя этим инструкциям: Install the Fusion CLI

     Устранение ошибки 'dbt language server is not running in this workspace'

    Чтобы устранить ошибку dbt language server is not running in this workspace, необходимо добавить папку с проектом dbt в workspace:

    1. В VS Code нажмите File в панели инструментов и выберите Add Folder to Workspace.
    2. Выберите папку проекта dbt, которую хотите добавить в workspace.
    3. Чтобы сохранить workspace, нажмите File, затем выберите Save Workspace As.
    4. Укажите расположение, в котором вы хотите сохранить workspace.

    После этого ошибка должна исчезнуть, а ваш проект dbt будет открыт через соответствующий workspace. Дополнительную информацию о workspace см. в разделе Что такое Workspace в VS Code?.

    Дополнительная информация о Fusion

    Fusion — это значительное обновление dbt. Хотя многие рабочие процессы, к которым вы привыкли, остаются без изменений, появляется множество новых идей, а также происходит отказ от ряда старых подходов. Ниже приведён список, охватывающий полный объём текущего релиза движка Fusion, включая вопросы реализации, установки, устаревших возможностей и ограничений:

    Нашли ошибку?

    0