Переход на платформу dbt: советы по оптимизации
Введение
Переход с самостоятельно размещённого dbt на dbt platform упрощает рабочие процессы аналитической инженерии: команды могут разрабатывать, тестировать, развёртывать и исследовать продукты данных с помощью единого, полностью управляемого программного сервиса. Это не просто более совершенные инструменты — это снижение совокупной стоимости владения, обеспечение ИИ надёжными данными и масштабирование за счёт самообслуживания с контролем и управлением.
Ознакомьтесь с нашей серией руководств из трёх частей о переходе с самостоятельно размещённого dbt на dbt platform. Эта серия идеально подходит пользователям, которые стремятся упростить рабочие процессы и расширить возможности аналитики:
Руководство | Информация | Аудитория |
|---|---|---|
| Переход на dbt platform: что нужно знать | Узнайте, что следует учесть при переходе на dbt platform и какие способы перехода доступны. | Руководители команд Администраторы |
| Переход на dbt platform: начало работы | Изучите шаги, необходимые для перехода на dbt platform. | Разработчики Инженеры данных Аналитики данных |
| Переход на dbt platform: советы по оптимизации | Узнайте, как повысить эффективность работы с dbt platform, на примере распространённых сценариев и полезных советов. | Все пользователи |
Зачем переходить на платформу dbt?
Если ваша команда сейчас использует dbt в собственной инфраструктуре, возможно, вы читаете это руководство по следующим причинам:
- Вы осознали, сколько сил требует поддержка такого развёртывания.
- Сотрудник, который всё настроил, уже покинул команду.
- Вас интересует, как dbt platform может помочь управлять сложным развёртыванием dbt, расширить круг участников или улучшить практики обеспечения безопасности и управления данными.
- Вам нужна управляемая основа данных для ИИ — общие определения, отслеживание происхождения данных и тестирование, чтобы результаты аналитики и ИИ заслуживали доверия бизнеса.
Истинная стоимость самостоятельного размещения скрывается в часах работы инженеров и напрасно расходуемых вычислительных ресурсах. Платформа dbt устраняет эти накладные расходы благодаря управляемой инфраструктуре и разработке в браузере: больше людей могут участвовать в работе, а вы не становитесь узким местом.
dbt State работает со всеми движками и средами: dbt v1, dbt platform и dbt v2.
Если вы использовали оркестрацию с учётом состояния до 1 июня 2026 года, вы можете продолжить её использовать. После запуска бесплатного пробного периода dbt State его продолжительность будет увеличена по сравнению со стандартными 30 днями. Если продление не применилось к вашей учётной записи, свяжитесь с командой, которая её сопровождает. Чтобы начать, обратитесь к разделу Переход с оркестрации с учётом состояния.
Слой данных — это слой ИИ: убедитесь, что данные проверены, чётко определены и заслуживают доверия на всех этапах обработки.
Переход на dbt platform упрощает рабочие процессы благодаря полностью управляемой среде, которая улучшает совместную работу, безопасность и оркестрацию. С dbt platform вы получаете доступ к таким возможностям, как взаимодействие между командами (dbt Mesh), управление версиями, оптимизированные процессы CI/CD, Catalog для всестороннего изучения данных и многое другое — всё это упрощает управление сложными развёртываниями dbt и позволяет эффективно масштабировать рабочие процессы обработки данных.
Это идеальный вариант для команд, которые хотят сократить затраты на поддержку собственной инфраструктуры, одновременно улучшая управление данными и повышая продуктивность.
Что вы узнаете
Возможно, вы уже начали переход на dbt platform и ищете советы, которые помогут оптимизировать работу с dbt platform. В этом руководстве приведены советы и оговорки по следующим направлениям:
Адаптеры и подключения
В dbt platform можно напрямую подключиться к вашей платформе данных и проверить подключение одним нажатием кнопки. Это особенно полезно для пользователей, которые только начинают работать с dbt platform или хотят упростить настройку подключения. Вот несколько советов и оговорок, которые стоит учитывать:
Советы
- Управляйте версиями dbt и обеспечивайте совместную работу команды с помощью функции dbt platform, позволяющей выбирать версию одним нажатием: она избавляет от ручных обновлений и расхождений версий. Выберите канал выпусков для непрерывного получения обновлений, чтобы всегда иметь актуальные исправления и при желании получать ранний доступ к новым возможностям для вашего проекта dbt.
- dbt platform поддерживает множество облачных провайдеров, включая Snowflake, Databricks, BigQuery, Fabric и Redshift, и это лишь некоторые из них.
- Используйте расширенные атрибуты, чтобы задать фрагмент
profiles.yml, который изменяет способ подключения dbt platform к платформе данных. На этой странице объясняется, где настраивать их для сред развёртывания и разработки.- Например, если в вашем
profiles.ymlесть поле, которое вы хотели бы добавить в пользовательский интерфейс адаптера dbt platform, вы можете задать его с помощью расширенных атрибутов.
- Например, если в вашем
Оговорки
- Не все параметры доступны для адаптеров.
- Проект может использовать только один тип хранилища данных.
Инструменты разработки
dbt platform позволяет специалистам по данным разрабатывать проекты в удобном для них инструменте. В состав платформы входят CLI dbt platform (локальный инструмент) и Studio IDE (браузерный инструмент) для создания, тестирования, запуска проектов dbt и управления их версиями.
Оба инструмента разработки рассчитаны на разные категории пользователей и предпочтения внутри вашей команды. Чтобы упростить рабочий процесс команды, важно понимать, кто предпочтёт Studio IDE, а кто — CLI dbt platform. Этот раздел поможет разобраться в этих предпочтениях.
Studio IDE
Веб-интерфейс для создания, тестирования, запуска проектов dbt и управления их версиями. Он компилирует код dbt в SQL и выполняет его непосредственно в вашей базе данных. Studio IDE ускоряет и упрощает разработку, позволяя как начинающим, так и опытным специалистам по данным создавать и тестировать изменения.
Кто может предпочесть Studio IDE?
- Новые пользователи dbt или пользователи, переходящие с других инструментов, которым удобнее работать в браузерном интерфейсе с подсказками.
- Участники команды, которым важны скорость и удобство начала работы с новым или существующим проектом.
- Пользователи, для которых важна непосредственная обратная связь от Studio IDE, например отображение несохранённых изменений.
Основные возможности
- Studio IDE предоставляет упрощённые функции Git:
- Создание веток для разработки функциональности от ветки, настроенной в среде разработки.
- Просмотр сохранённых, но ещё не включённых в коммит изменений кода непосредственно в Studio IDE.
- Форматирование и линтинг кода с помощью
sqlfluffилиsqlfmt. Также поддерживается добавление собственных правил линтинга. - Встроенная возможность использовать метаданные production-среды через defer непосредственно в рабочих процессах разработки, что сокращает количество объектов.
- Поддержка одновременного запуска нескольких команд dbt благодаря безопасному параллельному выполнению — возможности, доступной в инфраструктуре dbt platform. В отличие от неё, локальный dbt не поддерживает безопасное параллельное выполнение нескольких вызовов в одном процессе.
Studio IDE предоставляет упрощённый интерфейс, доступный всем пользователям независимо от их технической подготовки. Однако некоторые возможности намеренно отсутствуют в Studio IDE, поскольку основной акцент сделан на простоте и удобстве использования:
- Pre-commit для автоматических проверок перед созданием коммита кода недоступен (пока).
- Массовое создание файлов и взаимодействие с файловой системой недоступны.
- Объединение команд и передача данных через конвейер, например
dbt run -s (bash command), недоступны.
dbt platform CLI
dbt platform CLI позволяет выполнять команды dbt в вашей среде разработки dbt platform из локальной командной строки. Этот инструмент предназначен для пользователей, которым нужен полный контроль над средой разработки, и идеально подходит тем, кто уверенно работает с командной строкой.
При переходе с самостоятельно размещённого dbt на dbt platform обязательно проверьте, что файл .gitignore содержит необходимые папки. dbt не взаимодействует с git, поэтому dbt platform не добавляет и не проверяет записи в файле .gitignore автоматически. Кроме того, если репозиторий уже содержит код dbt и не требует инициализации, dbt platform не добавит недостающие записи в файл .gitignore.
Кто может предпочесть CLI dbt platform?
- Специалисты по данным, привыкшие работать с определённым набором инструментов разработки.
- Пользователи, которым нужен детальный контроль над рабочими процессами Git (например, pre-commit для автоматических проверок перед созданием коммита кода).
- Специалисты по данным, которым необходимо выполнять сложные операции, такие как массовое создание файлов или определённые комбинации команд.
Основные возможности
- Возможность выполнять команды dbt в своей среде разработки dbt platform из локальной командной строки с минимальной настройкой.
- Встроенная возможность использовать метаданные production-среды через defer непосредственно в рабочих процессах разработки, что сокращает количество объектов.
- Поддержка одновременного запуска нескольких команд dbt благодаря безопасному параллельному выполнению — возможности, доступной в инфраструктуре dbt platform. В отличие от неё, локальный dbt не поддерживает безопасное параллельное выполнение нескольких вызовов в одном процессе.
- Возможность использовать расширения Visual Studio (VS) Code
Оркестрация
dbt platform предоставляет надёжные средства оркестрации, которые позволяют легко планировать, запускать и отслеживать задания dbt. Вот несколько советов и оговорок, которые стоит учитывать при использовании возможностей оркестрации dbt platform:
Советы
- Включите частичный разбор между заданиями в dbt platform, чтобы значительно ускорить разбор проекта за счёт обработки только изменённых файлов и оптимизировать производительность крупных проектов.
- Запускайте несколько заданий CI/CD одновременно, не блокируя запуски в production-среде. Планировщик заданий автоматически отменяет устаревшие запуски при отправке нового коммита. Это возможно благодаря тому, что каждый PR выполняется в собственной схеме.
- dbt platform автоматически отменяет запуск по расписанию, если предыдущий запуск ещё выполняется. Это предотвращает ненужные повторные выполнения.
- Защитите свою работу и актуальность данных от сбоев сторонних сервисов: включите кэширование Git-репозитория в dbt platform, которое сохраняет кэш Git-репозитория проекта. EnterpriseEnterprise +
- Связывайте задания развёртывания между проектами dbt platform, настроив задание или используя для этого Create Job API. StarterEnterprise
- Повторно запускайте задания с начала или с места сбоя, если выполнение задания dbt завершилось со статусом
Error.
Оговорки
- Чтобы автоматизировать настройку и конфигурирование вашей платформы dbt, можно хранить конфигурации заданий в виде кода в репозитории:
- Ознакомьтесь с нашим провайдером Terraform.
- Также ознакомьтесь с нашим репозиторием jobs-as-code — инструментом для управления заданиями dbt platform с помощью YAML-файла с чётко определённой структурой.
- Пользователи dbt platform и внешние адресаты электронной почты могут получать уведомления об ошибке, успешном выполнении или отмене задания. Чтобы получать уведомления о предупреждениях, можно создать подписку на вебхук и отправлять сообщения в Slack.
dbt Mesh
Mesh помогает организациям со зрелыми и сложными процессами преобразования данных в dbt повысить гибкость и производительность своих проектов dbt. Он позволяет использовать несколько взаимосвязанных проектов dbt вместо одного большого монолитного проекта.
Он позволяет связывать разные проекты и модели и переходить между ними с помощью межпроектных зависимостей, улучшая совместную работу и управление данными.
Вот несколько советов и оговорок, которые стоит учитывать при использовании Mesh:
Советы
- Для динамического разрешения межпроектных ссылок все разработчики должны вести разработку в dbt platform (используя CLI dbt platform или Studio IDE). В самостоятельно размещённом dbt нет встроенной поддержки межпроектных ссылок: для этого нужно устанавливать исходный код вышестоящих проектов в виде пакетов
- Связывайте модели из разных проектов, чтобы обеспечить модульный и масштабируемый подход к организации проекта и работы команд.
- Управляйте доступом к моделям dbt как внутри проектов, так и между ними с помощью следующих возможностей:
- Группы — Объединяйте логически связанные узлы в DAG dbt и назначайте владельца для всей группы.
- Доступ к моделям — Определяйте, какие другие модели или проекты могут ссылаться на эту модель.
- Версии моделей — Обеспечивайте внедрение новых и вывод из эксплуатации устаревших версий моделей по мере их развития.
- Контракты моделей — Задавайте чёткие требования к структуре данных, чтобы изменения данных до их обработки в dbt или изменения логики проекта не нарушали работу продуктов данных нижестоящих потребителей.
Оговорки
- Для использования межпроектных ссылок в dbt каждый проект dbt должен соответствовать только одному проекту dbt platform. Мы настоятельно не рекомендуем создавать несколько проектов для одной и той же кодовой базы, даже если вы хотите управлять правами доступа, подключаться к разным хранилищам данных или разделять производственные и непроизводственные данные. Хотя раньше это было необходимо, такие возможности, как промежуточные среды, RBAC на уровне среды (скоро появится) и расширенные атрибуты, устранят эту необходимость.
- Зависимости проектов однонаправленны, то есть действуют только в одном направлении. Это означает, что dbt проверяет наличие циклов между проектами (циклических зависимостей) и выдаёт ошибки при их обнаружении. Однако мы рассматриваем возможность в будущем разрешить проектам зависеть друг от друга в обоих направлениях: dbt по-прежнему будет проверять циклы на уровне узлов, но разрешит циклы на уровне проектов.
- Все пользователи аккаунта могут просматривать метаданные публичных моделей, что упрощает поиск продуктов данных. Это не связано с доступом к самим данным, который регулируется правами в хранилище данных. Для случаев, когда даже метаданные о повторно используемом ресурсе данных являются конфиденциальными, мы рассматриваем дополнительное расширение возможностей защищённых моделей.
Другие вопросы рассмотрены в разделе часто задаваемых вопросов о Mesh.
dbt Semantic Layer
Используйте Semantic Layer на базе MetricFlow, чтобы создать единое представление бизнес-метрик и обеспечить их согласованность во всех аналитических инструментах. Слой данных — основа как для ИИ, так и для аналитики — общие определения и сведения о происхождении данных обеспечивают ИИ и BI единым надёжным контекстом, благодаря чему ответы согласованы и применимы на практике. Вот несколько советов и оговорок, которые стоит учитывать при использовании Semantic Layer:
Советы
- Определите семантические модели и метрики один раз в dbt platform с помощью Semantic Layer (на базе MetricFlow). Повторно используйте их на разных аналитических платформах, сокращая дублирование и количество ошибок.
- Используйте API Semantic Layer для запросов метрик в нижестоящих инструментах, чтобы получать согласованные и надёжные показатели.
- Подключайте различные приложения для работы с данными — от инструментов бизнес-аналитики до блокнотов, электронных таблиц, каталогов данных и других инструментов — для запросов ваших метрик. Доступные интеграции включают Tableau, Google Sheets, Hex и другие.
- Используйте экспорт, чтобы по расписанию сохранять результаты часто используемых запросов непосредственно в вашей платформе данных.
Оговорки
- Semantic Layer в настоящее время поддерживает выполнение запросов в среде развёртывания. Возможность выполнения запросов в среде разработки появится в ближайшее время.
- Выполняйте запросы и команды семантического слоя в CLI dbt platform; выполнение запросов и команд семантического слоя в Studio IDE пока не поддерживается.
- Semantic Layer не поддерживает использование единого входа (SSO) для учётных данных production-среды Semantic Layer, однако SSO поддерживается для учётных записей пользователей в среде разработки.
Дополнительную информацию см. в разделе часто задаваемых вопросов о Semantic Layer.
dbt Catalog
Catalog расширяет возможности поиска, изучения ресурсов данных и устранения связанных с ними проблем благодаря подробным метаданным и визуализации происхождения данных. Поиск ресурсов и сведения о происхождении данных необходимы для управления данными и предоставления надёжного контекста рабочим процессам ИИ. Вот несколько советов и оговорок, которые стоит учитывать при использовании Catalog:
Советы
- Используйте поиск и фильтры в Catalog, чтобы быстро находить модели, источники и тесты, упрощая рабочий процесс.
- Просматривайте все проекты и публичные модели в аккаунте, места определения публичных моделей и способы их использования, чтобы лучше понимать ресурсы, используемые между проектами.
- Используйте функцию Lenses — слои для DAG, подобные слоям карты, доступные на графе происхождения данных вашего проекта. Lenses помогают лучше понимать контекстные метаданные проекта в большом масштабе, в частности выделять определённую модель или подмножество моделей.
- Получайте доступ к сведениям о происхождении данных на уровне столбцов (CLL) для ресурсов вашего проекта dbt. EnterpriseEnterprise +
Оговорки
- Чтобы Catalog заполнился информацией, в производственной среде развёртывания должен быть хотя бы один успешный запуск задания.
Ознакомьтесь с функциями Catalog, чтобы в полной мере использовать его возможности и не упустить способы повысить эффективность.
Дополнительную информацию см. в разделе часто задаваемых вопросов о Catalog.
Что дальше?
Поздравляем с завершением руководства 🎉!
Надеемся, вы получили полезные сведения и советы, которые помогут вам при переходе. Важно помнить: переход с самостоятельно размещённого dbt на dbt platform — это не только развитие ваших проектов данных, но и выход на новый уровень совместной работы, управления, эффективности и инноваций в команде, а также создание слоя данных, готового к использованию ИИ.
В качестве следующих шагов продолжите изучение нашей серии руководств из трёх частей о переходе с самостоятельно размещённого dbt на dbt platform:
Руководство | Информация | Аудитория |
|---|---|---|
| Переход на dbt platform: что нужно знать | Узнайте, что следует учесть при переходе на dbt platform и какие способы перехода доступны. | Руководители команд Администраторы |
| Переход на dbt platform: начало работы | Изучите шаги, необходимые для перехода на dbt platform. | Разработчики Инженеры данных Аналитики данных |
| Переход на dbt platform: советы по оптимизации | Узнайте, как повысить эффективность работы с dbt platform, на примере распространённых сценариев и полезных советов. | Все пользователи |
Зачем переходить на платформу dbt?
Если ваша команда сейчас использует dbt в собственной инфраструктуре, возможно, вы читаете это руководство по следующим причинам:
- Вы осознали, сколько сил требует поддержка такого развёртывания.
- Сотрудник, который всё настроил, уже покинул команду.
- Вас интересует, как dbt platform может помочь управлять сложным развёртыванием dbt, расширить круг участников или улучшить практики обеспечения безопасности и управления данными.
- Вам нужна управляемая основа данных для ИИ — общие определения, отслеживание происхождения данных и тестирование, чтобы результаты аналитики и ИИ заслуживали доверия бизнеса.
Истинная стоимость самостоятельного размещения скрывается в часах работы инженеров и напрасно расходуемых вычислительных ресурсах. Платформа dbt устраняет эти накладные расходы благодаря управляемой инфраструктуре и разработке в браузере: больше людей могут участвовать в работе, а вы не становитесь узким местом.
dbt State работает со всеми движками и средами: dbt v1, dbt platform и dbt v2.
Если вы использовали оркестрацию с учётом состояния до 1 июня 2026 года, вы можете продолжить её использовать. После запуска бесплатного пробного периода dbt State его продолжительность будет увеличена по сравнению со стандартными 30 днями. Если продление не применилось к вашей учётной записи, свяжитесь с командой, которая её сопровождает. Чтобы начать, обратитесь к разделу Переход с оркестрации с учётом состояния.
Слой данных — это слой ИИ: убедитесь, что данные проверены, чётко определены и заслуживают доверия на всех этапах обработки.
Переход на dbt platform упрощает рабочие процессы благодаря полностью управляемой среде, которая улучшает совместную работу, безопасность и оркестрацию. С dbt platform вы получаете доступ к таким возможностям, как взаимодействие между командами (dbt Mesh), управление версиями, оптимизированные процессы CI/CD, Catalog для всестороннего изучения данных и многое другое — всё это упрощает управление сложными развёртываниями dbt и позволяет эффективно масштабировать рабочие процессы обработки данных.
Это идеальный вариант для команд, которые хотят сократить затраты на поддержку собственной инфраструктуры, одновременно улучшая управление данными и повышая продуктивность.
Ресурсы
Если вам нужна дополнительная помощь или у вас есть вопросы, воспользуйтесь следующими ресурсами:
- Курсы dbt Learn для обучения по видеоматериалам в удобное время.
- Наша служба поддержки всегда готова помочь вам устранить проблемы с dbt platform.
- Присоединяйтесь к сообществу dbt, чтобы общаться с другими пользователями dbt, задавать вопросы и делиться лучшими практиками.
- Подпишитесь на RSS-уведомления dbt platform
- Для аккаунтов Enterprise доступна команда сопровождения, которая помогает устранять проблемы и управлять аккаунтом. Закажите демонстрацию, чтобы узнать больше.
- Сравнение dbt platform с самостоятельно размещённым dbt — подробное сопоставление самостоятельно размещённого dbt и dbt platform.
Для получения индивидуальной помощи воспользуйтесь следующими ресурсами:
- Запишитесь на демонстрации с экспертами и получите рекомендации
- Обратитесь к команде профессиональных услуг dbt Labs за поддержкой вашей команды по работе с данными и помощью при переходе.