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

Переход с dbt Core на dbt Cloud: Начало работы

Обновлен Общее время выполнения: 3-4 часа
Migration
dbt Core
dbt Cloud
Intermediate
Menu

    Введение

    Переход с dbt Core на dbt Cloud упрощает рабочие процессы аналитической инженерии, позволяя командам разрабатывать, тестировать, развертывать и исследовать продукты данных с помощью единого полностью управляемого программного сервиса.

    Изучите нашу серию из 3-х частей о переходе с dbt Core на dbt Cloud. Эта серия идеально подходит для пользователей, стремящихся к упрощенным рабочим процессам и улучшенной аналитике:

    Руководство
    Информация
    Аудитория
    Переход с dbt Core на dbt Cloud: Что нужно знатьПоймите, какие аспекты и методы нужно учитывать при переходе с dbt Core на dbt Cloud.Руководители команд
    Администраторы
    Переход с dbt Core на dbt Cloud: Начало работыУзнайте, какие шаги необходимы для перехода с dbt Core на dbt Cloud.Разработчики
    Инженеры данных
    Аналитики данных
    Переход с dbt Core на dbt Cloud: Советы по оптимизацииУзнайте, как оптимизировать работу с dbt Cloud с помощью распространенных сценариев и полезных советов.Все

    Почему стоит перейти на dbt Cloud?

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

    • Вы осознали, насколько сложно поддерживать это развертывание.
    • Человек, который его настроил, уже ушел.
    • Вы заинтересованы в том, что dbt Cloud может предложить для лучшего управления сложностью вашего развертывания dbt, демократизации доступа для большего числа участников или улучшения практик безопасности и управления.

    Переход с dbt Core на dbt Cloud упрощает рабочие процессы, предоставляя полностью управляемую среду, которая улучшает сотрудничество, безопасность и оркестрацию. С dbt Cloud вы получаете доступ к таким функциям, как межкомандное сотрудничество (dbt Mesh), управление версиями, упрощенный CI/CD, dbt Explorer для получения всесторонних инсайтов и многое другое — что облегчает управление сложными развертываниями dbt и эффективное масштабирование ваших рабочих процессов с данными.

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

     Что такое dbt Cloud и dbt Core?

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

    Это руководство описывает шаги, которые необходимо предпринять для перехода с dbt Core на dbt Cloud, и подчеркивает необходимые технические изменения:

    Связанные документы

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

    Настройка аккаунта

    Этот раздел описывает шаги по настройке вашего аккаунта dbt Cloud и его конфигурации для вашей команды.

    1. Создайте ваш аккаунт dbt Cloud.

    2. Предоставьте доступ пользователям и пригласите пользователей в ваш аккаунт и проект dbt Cloud.

    3. Настройте Единый вход (SSO) или Контроль доступа на основе ролей (RBAC) для легкого и безопасного доступа. enterprise

      • Это устраняет необходимость сохранять пароли и секретные переменные окружения локально.

    Дополнительная конфигурация

    Изучите эти дополнительные конфигурации для улучшения производительности и надежности:

    1. В Настройках аккаунта включите частичный парсинг, чтобы перепарсить только измененные файлы, экономя время.

    2. В Настройках аккаунта включите кэширование репозитория Git для надежности работы и защиты от сбоев сторонних сервисов. enterprise

    Настройка платформы данных

    Этот раздел описывает соображения и методы подключения вашей платформы данных к dbt Cloud.

    1. В dbt Cloud настройте ваши подключения платформы данных и переменные окружения. dbt Cloud может подключаться к различным поставщикам платформ данных, включая:

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

    Дополнительная конфигурация

    Изучите эти дополнительные конфигурации для дальнейшей оптимизации настройки вашей платформы данных:

    1. Используйте OAuth-подключения, которые позволяют безопасную аутентификацию с использованием SSO вашей платформы данных. enterprise

    Настройка Git

    Исходный код вашего существующего проекта dbt должен находиться в репозитории Git. В этом разделе вы подключите исходный код вашего существующего проекта dbt из Git к dbt Cloud.

    1. Убедитесь, что ваш проект dbt находится в репозитории Git.

    2. В Настройках аккаунта выберите Интеграции, чтобы подключить ваш репозиторий Git к dbt Cloud:

      • (Рекомендуется) Подключитесь с помощью одной из встроенных интеграций в dbt Cloud (таких как GitHub, GitLab и Azure DevOps).

        Этот метод предпочтителен из-за его простоты, функций безопасности (включая безопасные входы через OAuth и автоматизированные рабочие процессы, такие как сборки CI при запросах на слияние), и общей легкости использования.

      • Импортируйте репозиторий Git из любого действительного URL Git, который указывает на проект dbt.

    Дополнительная конфигурация

    Изучите эти дополнительные конфигурации для дальнейшей оптимизации настройки Git:

    1. Войдите в dbt Cloud, используя OAuth-подключения для интеграции с вашей платформой исходного кода. Это автоматически связывает с репозиторием, используя одну из встроенных интеграций, установленных на уровне аккаунта. enterprise

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

    Настройка разработчика

    Этот раздел подчеркивает конфигурации разработки, которые вам понадобятся для вашего проекта dbt Cloud. В этом разделе рассматриваются следующие категории:

    Среды dbt Cloud

    Наиболее распространенные среды данных — это производственная, промежуточная и среда разработки. Способ, которым dbt Core управляет средами, заключается в использовании target, которые представляют собой различные наборы деталей подключения.

    Среды dbt Cloud идут дальше, предоставляя:

    • Интеграцию с такими функциями, как планирование заданий или контроль версий, что упрощает управление полным жизненным циклом ваших проектов dbt в рамках одной платформы.
    • Упрощение процесса переключения между контекстами разработки, промежуточной и производственной среды.
    • Упрощение настройки сред через интерфейс dbt Cloud вместо ручного редактирования файла profiles.yml. Вы также можете настроить или кастомизировать имена целей в dbt Cloud.
    • Добавление атрибутов profiles.yml к настройкам среды dbt Cloud с помощью Расширенных атрибутов.
    • Использование кэширования репозитория Git для защиты от сбоев сторонних сервисов, сбоев аутентификации Git и других проблем. enterprise

    Начальные шаги настройки

    1. Настройка среды разработки — Настройте вашу среду разработки и учетные данные для разработки. Вам это понадобится для доступа к вашему проекту dbt и начала разработки.

    2. Версия dbt Core — В вашей среде dbt Cloud выберите трассу релизов для постоянных обновлений версии dbt. Если ваша команда планирует использовать как dbt Core, так и dbt Cloud для разработки или развертывания вашего проекта dbt, вы можете выполнить dbt --version в командной строке, чтобы узнать, какую версию dbt Core вы используете.

      • При использовании dbt Core вам нужно думать о том, какую версию вы используете, и управлять своими собственными обновлениями. При использовании dbt Cloud используйте трассы релизов, чтобы вам не приходилось это делать.
    3. Подключение к вашей платформе данных — При использовании dbt Cloud вы можете подключиться к вашей платформе данных напрямую в интерфейсе.

      • Каждая среда примерно эквивалентна записи в вашем файле profiles.yml. Это означает, что вам не нужен файл profiles.yml в вашем проекте.
    4. Инструменты разработки — Настройте ваше рабочее пространство разработки с помощью dbt Cloud CLI (интерфейс командной строки или редактор кода) или dbt Cloud IDE (на основе браузера) для создания, тестирования, запуска и контроля версий вашего кода dbt в выбранном вами инструменте.

      • Если вы ранее устанавливали dbt Core, в документации по установке dbt Cloud CLI есть больше информации о том, как установить dbt Cloud CLI, создать псевдонимы или удалить dbt Core для плавного перехода.

    Дополнительная конфигурация

    Изучите эти дополнительные конфигурации для дальнейшей оптимизации вашей настройки разработчика:

    1. Кастомные имена целей — Использование custom target.names в ваших проектах dbt помогает идентифицировать различные среды (например, разработка, промежуточная и производственная). Хотя вы можете указать значения custom target.name в ваших учетных данных разработчика или настройке оркестрации, мы рекомендуем использовать переменные окружения как предпочтительный метод. Они предлагают более ясный способ управления различными средами и лучше поддерживаются функцией частичного парсинга dbt, в отличие от использования логики {{ target }}, которая предназначена для определения подключения к хранилищу данных.

    Команды dbt Cloud

    1. Ознакомьтесь с командами dbt, поддерживаемыми для разработки в dbt Cloud. Например, dbt init не требуется в dbt Cloud, так как вы можете создать новый проект напрямую в dbt Cloud.

    Переменные окружения

    Этот раздел поможет вам понять, как настроить и управлять переменными окружения dbt Cloud для вашего проекта. В этом разделе рассматриваются следующие категории:

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

    В dbt Core переменные окружения или функция env_var определяются вручную разработчиком или в внешнем приложении, выполняющем dbt.

    Переменные окружения в dbt Cloud

    • Переменные окружения dbt Cloud должны иметь префикс DBT_ (включая DBT_ENV_CUSTOM_ENV_ или DBT_ENV_SECRET).
    • Если ваши переменные окружения dbt Core не следуют этой конвенции именования, выполните «поиск и замену» в вашем проекте, чтобы убедиться, что все ссылки на эти переменные окружения содержат правильные соглашения об именах.
    • dbt Cloud защищает переменные окружения, которые позволяют более гибкую конфигурацию подключений к хранилищу данных или интеграций с поставщиками git, предлагая дополнительные меры для чувствительных значений, такие как префикс ключей с DBT_ENV_SECRET для их сокрытия в логах и интерфейсе.
    Установка значений на уровне проекта и средыУстановка значений на уровне проекта и среды

    Порядок приоритета переменных окружения dbt Cloud

    Переменные окружения в dbt Cloud управляются с четким порядком приоритета, позволяя пользователям определять значения на четырех уровнях (от высшего к низшему порядку приоритета):

    • На уровне задания (переопределение задания) или в IDE для отдельного разработчика (личное переопределение). Высший приоритет
    • На уровне среды, который может быть переопределен уровнем задания или личным переопределением.
    • Проектное значение по умолчанию, которое может быть переопределено уровнем среды, уровнем задания или личным переопределением.
    • Необязательный аргумент по умолчанию, переданный функции Jinja env_var в коде. Низший приоритет
    Порядок приоритета переменных окруженияПорядок приоритета переменных окружения

    Настройка переменных окружения в dbt Cloud

    • Чтобы установить эти переменные для всего проекта или конкретных сред, перейдите в Развертывание > Среды > вкладка Переменные окружения.
    • Чтобы установить эти переменные на уровне задания, перейдите в Развертывание > Задания > Выберите ваше задание > Настройки > Расширенные настройки.
    • Чтобы установить эти переменные на уровне личного переопределения, перейдите в Настройки профиля > Учетные данные > Выберите ваш проект > Переменные окружения.

    Настройка оркестрации

    Этот раздел описывает соображения и методы настройки ваших сред и заданий dbt Cloud для оркестрации. В этом разделе рассматриваются следующие категории:

    Среды dbt Cloud

    Чтобы использовать планировщик заданий dbt Cloud, настройте одну среду как производственную среду. Это среда развертывания. Вы можете настроить несколько сред для различных этапов вашего конвейера развертывания, таких как разработка, промежуточная/QA и производство.

    Начальные шаги настройки

    1. Версия dbt Core — В настройках вашей среды настройте dbt Cloud с той же версией dbt Core.

      • После завершения полной миграции мы рекомендуем обновить ваши среды до трасс релизов, чтобы всегда получать последние функции и многое другое. Вам нужно сделать это только один раз.
    2. Настройка ваших заданийСоздайте задания для запланированных или событийных заданий dbt. Вы можете использовать выполнение по cron, вручную, по запросам на слияние или запускать по завершении другого задания.

    Дополнительная конфигурация

    Изучите эти дополнительные конфигурации для дальнейшей оптимизации вашей настройки оркестрации dbt Cloud:

    1. Кастомные имена целей — Используйте переменные окружения для установки custom target.name для каждого соответствующего задания dbt Cloud на уровне среды.

    2. Команды dbt — Добавьте любые соответствующие команды dbt для выполнения ваших запусков заданий dbt Cloud.

    3. Уведомления — Настройте уведомления, настроив оповещения по электронной почте и Slack для мониторинга ваших заданий.

    4. Инструменты мониторинга — Используйте инструменты мониторинга, такие как история запусков, повторные попытки заданий, цепочка заданий, плитки статуса на панели и многое другое для бесшовного опыта оркестрации.

    5. Доступ к API — Создайте токены аутентификации API и доступ к API dbt Cloud по мере необходимости. teamenterprise

    6. dbt Explorer — Если вы используете dbt Explorer и запускаете производственные задания с внешним оркестратором, убедитесь, что ваши производственные задания выполняют dbt run или dbt build, чтобы обновить и просмотреть модели и их метаданные в dbt Explorer. Запуск dbt compile сам по себе не обновит метаданные модели. Кроме того, такие функции, как родословная на уровне столбцов, также требуют метаданных каталога, создаваемых при запуске dbt docs generate. teamenterprise

    Настройка CI/CD

    Создание пользовательского решения для эффективной проверки кода при запросах на слияние является сложной задачей. С dbt Cloud вы можете включить непрерывную интеграцию / непрерывное развертывание (CI/CD) и настроить dbt Cloud для выполнения ваших проектов dbt во временной схеме, когда новые коммиты отправляются в открытые запросы на слияние.

    Рабочий процесс непрерывной интеграции в dbt CloudРабочий процесс непрерывной интеграции в dbt Cloud

    Эта функция сборки при запросе на слияние — отличный способ поймать ошибки до развертывания в производственной среде и важный инструмент для специалистов по данным.

    1. Настройте интеграцию с нативным приложением Git (таким как Azure DevOps, GitHub, GitLab) и средой CI в dbt Cloud.
    2. Создайте задание CI/CD для автоматизации проверок качества перед развертыванием кода в производственной среде.
    3. Запустите ваши задания в производственной среде, чтобы полностью реализовать CI/CD. Будущие запросы на слияние также будут использовать последние производственные запуски для сравнения.

    Разработка и исследование моделей

    В этом разделе вы сможете проверить, правильно ли выполняются или компилируются ваши модели в выбранном вами инструменте разработки: dbt Cloud IDE или dbt Cloud CLI.

    Вы захотите убедиться, что настроили вашу среду разработки и учетные данные.

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

      • Выполните dbt compile, чтобы убедиться, что ваш проект компилируется правильно.
      • Запустите несколько моделей в dbt Cloud IDE или dbt Cloud CLI, чтобы убедиться, что вы получаете точные результаты в разработке.
    2. После успешного выполнения вашего первого задания в производственной среде используйте dbt Explorer, чтобы просмотреть ресурсы вашего проекта (такие как модели, тесты и метрики) и их , чтобы лучше понять его текущее состояние в производственной среде. teamenterprise

    Что дальше?

    Поздравляем с завершением первой части вашего перехода на dbt Cloud 🎉!

    Вы узнали:

    • Как настроить ваш аккаунт dbt Cloud
    • Как подключить вашу платформу данных и репозиторий Git
    • Как настроить ваши среды разработки, оркестрации и CI/CD
    • Как настроить переменные окружения и проверить ваши модели

    Для следующих шагов вы можете продолжить изучение нашей серии из 3-х частей о переходе с dbt Core на dbt Cloud:

    Руководство
    Информация
    Аудитория
    Переход с dbt Core на dbt Cloud: Что нужно знатьПоймите, какие аспекты и методы нужно учитывать при переходе с dbt Core на dbt Cloud.Руководители команд
    Администраторы
    Переход с dbt Core на dbt Cloud: Начало работыУзнайте, какие шаги необходимы для перехода с dbt Core на dbt Cloud.Разработчики
    Инженеры данных
    Аналитики данных
    Переход с dbt Core на dbt Cloud: Советы по оптимизацииУзнайте, как оптимизировать работу с dbt Cloud с помощью распространенных сценариев и полезных советов.Все

    Почему стоит перейти на dbt Cloud?

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

    • Вы осознали, насколько сложно поддерживать это развертывание.
    • Человек, который его настроил, уже ушел.
    • Вы заинтересованы в том, что dbt Cloud может предложить для лучшего управления сложностью вашего развертывания dbt, демократизации доступа для большего числа участников или улучшения практик безопасности и управления.

    Переход с dbt Core на dbt Cloud упрощает рабочие процессы, предоставляя полностью управляемую среду, которая улучшает сотрудничество, безопасность и оркестрацию. С dbt Cloud вы получаете доступ к таким функциям, как межкомандное сотрудничество (dbt Mesh), управление версиями, упрощенный CI/CD, dbt Explorer для получения всесторонних инсайтов и многое другое — что облегчает управление сложными развертываниями dbt и эффективное масштабирование ваших рабочих процессов с данными.

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

    Связанные документы

    0