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

Coalesce: Быстрый старт для dbt Cloud CLI

Обновлен
Cloud CLI
dbt Cloud
Quickstart
Beginner
Menu

    Введение

    В этом руководстве по быстрому старту вы узнаете, как настроить и использовать dbt Cloud CLI в рамках мастер-класса Coalesce 24.

    Вы узнаете, как:

    • Настроить песочницу dbt Cloud.
    • Установить dbt Cloud CLI и подключиться к dbt Cloud.
    • Выполнять команды локально с помощью dbt Cloud CLI.
    • Переключаться на разные производственные среды.
    • Использовать cross-project ref.
    • Установить dbt Power User.
    • Использовать dbt Power User для ускорения разработки.

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

    • Знакомство с проектами dbt и общими командами (например, dbt build)
    • Установленный Git
    • Установленный редактор, такой как Visual Studio Code (предпочтительно)

    Связанные материалы

    Установка Git и Visual Studio Code (Предварительные требования)

    Вам нужно будет установить Git локально и редактор кода (предпочтительно Visual Studio Code).

    Проверьте статус установки

    Запустите git --version в вашем терминале, чтобы проверить, установлен ли он. Например:

    Пример проверки ус�тановки GitПример проверки установки Git

    Проверьте установленные приложения на наличие Visual Studio Code (vscode) или другого редактора. Например:

    Пример проверки установки Visual Studio Code на macOSПример проверки установки Visual Studio Code на macOS

    Установите Git и Visual Studio Code

    Перейдите на следующую страницу установки Git и установите его для вашей операционной системы:

    https://git-scm.com/downloads

    Перейдите на следующую страницу установки Visual Studio Code и установите его для вашей операционной системы.

    https://code.visualstudio.com/download

    Настройка dbt Cloud (Только для мастер-класса Coalesce)

    Давайте настроим песочницу dbt Cloud, которая уже подключена к аккаунту Snowflake для мастер-класса.

    1. Перейдите на bit.ly/coalesce-24-sandboxes, чтобы создать аккаунт. Убедитесь, что вы вышли из других аккаунтов dbt Cloud.

      a. Введите ваше Имя и Фамилию

      b. Для Мастер-класса выберите Test driving dbt Cloud CLI and dbt power user из выпадающего списка

      c. Пароль будет предоставлен вашими ведущими

      d. Примите условия и нажмите Завершить регистрацию

    2. Перейдите к проекту платформы, выбрав Project в левой боковой панели и выбрав Platform Analytics.

    3. Выберите Deploy >> Runs, чтобы найти созданные задания. Для каждого задания нажмите на задание и нажмите run.

    4. Теперь повторите для Analytics project. Переключитесь в проект Analytics.

    5. Выберите Deploy >> Runs, чтобы найти созданные задания. Для одного задания нажмите на задание и нажмите run.

    6. Выберите Explore в навигации и выберите XX. Теперь вы можете визуализировать вашу dbt Mesh. Нажмите на каждый проект, чтобы увидеть уровень родословной проекта.

    Теперь вы успешно запустили ваш проект в средах развертывания, чтобы вы могли использовать cross project ref и deferral позже на мастер-классе.

    Настройка dbt Cloud CLI

    Теперь мы клонируем репозиторий проекта и настроим dbt Cloud CLI для подключения к вашей песочнице.

    Клонирование репозитория

    1. Перейдите в папку на вашем компьютере, чтобы клонировать репозиторий.

    2. В вашем терминале выполните следующую команду, чтобы клонировать downstream (аналитический) проект:

      git clone https://github.com/dbt-labs/c24-workshops-analytics.git

    Установка Cloud CLI

    1. В dbt Cloud выберите Platform Analytics и выберите Develop >> Configure Cloud CLI.

    2. В зависимости от вашей текущей локальной настройки используйте следующие рекомендации для определения вашего подхода к установке:

      a. Проверьте, есть ли у вас dbt в PATH, запустив dbt --version

      b. Если у вас нет dbt в PATH, мы рекомендуем метод установки для macOS или Windows.

      c. Если у вас есть dbt в PATH (глобальная среда), мы рекомендуем:

      1. Удалить dbt глобально
      2. Установить dbt Cloud CLI с помощью виртуальной среды Python

      d. Если у вас есть dbt в виртуальной среде, установите dbt Cloud CLI с помощью отдельной виртуальной среды Python. Обязательно активируйте ее с помощью source <path to env>/bin/activate.

    3. Загрузите файл конфигурации CLI из интерфейса dbt Cloud. Сохраните его в вашей папке .dbt.

    4. Перейдите в папку проекта dbt, которую вы клонировали ранее, и откройте файл dbt_project.yml с вашим project_id.

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

    Запустите dbt compile, чтобы проверить вашу установку.

    Вот и все! Вы установили dbt Cloud CLI! Давайте погрузимся в работу!

    Дополнительные ресурсы

    Обратитесь к следующим документам, если у вас возникнут проблемы при попытке установить dbt Cloud CLI:

    Использование dbt Cloud CLI

    Давайте выполним несколько команд вместе, чтобы привыкнуть к dbt Cloud CLI:

    • dbt debug — Отображает ваши данные подключения и информацию
    • dbt compile --select stg_campaigns — Компилирует ваш проект dbt
    • dbt run --select stg_campaigns — Материализует ваши модели dbt
    • dbt run --select stg_campaigns — Предварительный просмотр результатов модели
    • dbt test --select stg_campaigns — Выполняет тесты на ваших материализованных моделях

    Теперь давайте углубимся в некоторые более продвинутые компоненты dbt Cloud CLI.

    Deferral

    Deferral — это мощная функция, позволяющая использовать вышестоящие активы, которые существуют за пределами вашей личной среды разработки. В результате вы можете ускорить свои рабочие процессы разработки и сэкономить на вычислительных ресурсах склада. Давайте выполним несколько команд с использованием deferral:

    1. Запустите dbt compile -s stg_campaigns. Обратите внимание, как мы можем разрешать зависимости в скомпилированном SQL без загрузки campaigns.csv.

    2. Теперь давайте изменим модель stg_campaigns, добавив временную метку:

      current_timestamp() as updated_at

      Давайте построим эту модель с помощью следующей команды.

    3. Запустите dbt build --select stg_campaigns. Мы используем deferral и концепцию "состояния", чтобы проверить объекты, которые были изменены, и разрешить зависимости вышестоящих активов, если они существуют.

      По умолчанию dbt Cloud CLI откладывает выполнение в Staging среде, если она существует. Если нет, dbt использует активы из производственной среды.

      Чтобы переопределить, в какую среду dbt Cloud CLI откладывает выполнение, вы можете установить ключ defer-env-id в вашем файле dbt_project.yml или dbt_cloud.yml. Например:

      dbt-cloud:
      defer-env-id: '123456'

    dbt Mesh

    У вас есть доступ к cross-project ref, который поддерживается метаданными dbt Cloud.

    1. Откройте модель agg_campaign_customer_contacts.

    2. Найдите ссылку {{ ref('platform', 'dim_customers', v=1) }}.

    3. Выполните команду:

      dbt run --select agg_campaign_customer_contacts
    4. Перейдите в dbt Cloud Explorer и найдите публичную модель. Давайте используем модель fct_order_items.

    5. Создайте новую модель под названием agg_orders в вашем проекте с следующим кодом:

      with orders as (

      select * from {{ ref('platform', 'fct_order_items') }}

      ),

      final as (

      select
      customer_key as customer_id,
      is_return as return_status,
      count(*) as count_orders

      from
      orders
      group by
      customer_key,
      is_return
      )

      select * from final

    Линтинг и исправление SQL файлов

    С встроенным SQLFluff вы можете проверять ваш код на соответствие стилю и автоматически вносить исправления.

    1. Выполните команду SQLFluff lint:

      dbt sqlfluff lint models/staging/campaigns/stg_campaigns.sql --dialect snowflake

      Это выявляет изменения, которые нужно внести в модель stg_campaigns.

    2. Выполните команду SQLFluff fix:

      dbt sqlfluff fix models/staging/campaigns/stg_campaigns.sql --dialect snowflake

      Это пытается напрямую внести исправления в модель stg_campaigns.

    Смена веток

    Вы можете быстро менять ветки без полного пуша в ваш Git-провайдер (например, GitHub):

    git checkout -b my-new-branch

    git checkout main

    Теперь вы ознакомились с тем, что можно сделать с dbt Cloud CLI. Давайте перейдем к dbt Power User.

    Установка dbt Power User

    Давайте установим dbt Power User, чтобы ускорить наш рабочий процесс.

    1. В Visual Studio Code нажмите на расширения и найдите "Power User for dbt".

      Найдите расширение VS Code для dbt Power UserНайдите расширение VS Code для dbt Power User
    2. Нажмите на установку.

    3. Нажмите Switch to dbt Cloud. Возможно, потребуется обновить.

      Переключитесь на dbt CloudПереключитесь на dbt Cloud
    4. Завершите шаги настройки. (нажмите на приветствие в VSCode и выберите dbt Poweruser)

      Завершите процесс настройкиЗавершите процесс настройки
    5. Создайте аккаунт для регистрации и получения API-ключа: https://app.myaltimate.com/register

    6. Скопируйте ваш API-ключ и введите его в настройки расширения dbt Power User.

    Теперь давайте погрузимся в работу!

    Использование dbt Power User

    Существует множество возможностей для ускорения вашего рабочего процесса с dbt Cloud. Давайте рассмотрим некоторые из них.

    Предварительный просмотр ваших изменений вверх/вниз по потоку

    Откройте расширение Power User на левой панели. Вы можете увидеть проекты вверх и вниз по потоку.

    Просмотр зависимостей вверх и вниз по потокуПросмотр зависимостей вверх и вниз по потоку

    Предварительный просмотр результатов

    Нажмите Command-Enter (или Control-Enter для Windows) и мгновенно увидьте результаты вашей модели ниже.

    Предварительный просмотр результатовПредварительный просмотр результатов

    Визуализация SQL

    Просматривая файл модели, нажмите на логотип Altimate в правом верхнем углу и выберите Visualize SQL, чтобы увидеть разбор вашей SQL модели.

    Визуализация обработки SQLВизуализация обработки SQL

    Генерация тестов и документации YML с удобным UX и AI

    В верхней части вашего файла модели нажмите на генерацию документации для интерфейса, чтобы быстро создать документацию и тесты с помощью AI

    Генерация тестов и документацииГенерация тестов и документации

    И это еще не все! Ознакомьтесь с документацией dbt Power User здесь: https://docs.myaltimate.com/

    Заключение

    Вы успешно установили dbt Cloud CLI и dbt Power User! Теперь вы можете получить преимущества локальной разработки и dbt Cloud, работая вместе.

    Следите за следующими улучшениями dbt Cloud CLI:

    • Более глубокая интеграция с dbt Explorer для визуального взаимодействия
    • Поддержка вызова производственных заданий непосредственно из CLI
    • Продолжение оптимизации для повышения производительности и масштабируемости
    0