О Discovery API StarterEnterpriseEnterprise +
Каждый раз, когда dbt запускает проект, он генерирует и сохраняет информацию о проекте. Эти метаданные включают сведения о моделях, источниках и других узлах проекта, а также результаты их выполнения. С помощью Discovery API в dbt вы можете запрашивать эту обширную информацию, чтобы лучше понимать ваш DAG и данные, которые он производит.
Используя метаданные в dbt, вы можете создавать системы мониторинга данных и оповещений, инструменты для изучения lineage, а также автоматизированную отчетность. Это помогает улучшить обнаружение данных, качество данных и операционные процессы пайплайнов внутри вашей организации.
Вы можете получить доступ к Discovery API через ad hoc queries, пользовательские приложения, широкий спектр интеграций партнерской экосистемы (например, BI/аналитику, каталоги и управление данными, а также инструменты качества и наблюдаемости), а также с помощью функций dbt, таких как model timing и data health tiles.
Вы можете запрашивать метаданные dbt:
- На уровне environment — как для актуального состояния (используйте endpoint
environment), так и для исторических результатов запусков (используйтеmodelHistoricalRuns) проекта dbt в production. - На уровне job — для получения результатов конкретного запуска job dbt для заданного типа ресурса, например
modelsилиtest.
Предварительные требования
- У вас должна быть учетная запись dbt с мультиарендной или выделенной (single tenant) архитектурой
- Вы должны использовать тариф Enterprise или Enterprise+
- Ваши проекты должны использовать release tracks dbt или версию dbt 1.0 и выше. Инструкции по обновлению см. в разделе Upgrade dbt version in Cloud.
Для чего можно использовать Discovery API
Нажмите на следующие вкладки, чтобы узнать больше о случаях использования API, анализе, который вы можете провести, и результатах, которых вы можете достичь, интегрировав его.
Чтобы использовать API напрямую или интегрировать ваш инструмент с ним, обратитесь к случаям использования и примерам для получения подробной информации.
- Производительность
- Качество
- Обнаружение
- Управление
- Разработка
Используйте API для анализа исторической информации, такой как время сборки модели, чтобы определить состояние ваших проектов dbt. Поиск неэффективностей в конфигурациях оркестрации может помочь снизить затраты на инфраструктуру и улучшить своевременность. Чтобы узнать больше о том, как это сделать, обратитесь к Производительность.
Вы можете использовать, например, вкладку время выполнения моделей, чтобы помочь выявить и оптимизировать узкие места в сборке моделей:
Используйте API, чтобы определить, являются ли данные точными и актуальными, отслеживая сбои тестов, свежесть источников и статус выполнения. Точная и надежная информация ценна для аналитики, принятия решений и мониторинга, чтобы помочь вашей организации избежать неправильных решений. Чтобы узнать больше об этом, обратитесь к Качество.
При использовании с вебхуками это также может помочь в обнаружении, расследовании и оповещении о проблемах.
Используйте API, чтобы находить и понимать активы dbt в интегрированных инструментах, используя информацию, такую как определения моделей и метрик, а также информацию о столбцах. Для получения более подробной информации обратитесь к Обнаружение.
Производители данных должны управлять и организовывать данные для заинтересованных сторон, в то время как потребители данных должны быстро и уверенно анализировать данные в большом масштабе, чтобы принимать обоснованные решения, которые улучшают бизнес-результаты и снижают организационные издержки. API полезен для обнаружения данных в каталогах, аналитических приложениях и инструментах машинного обучения (ML). Он может помочь вам понять происхождение и значение наборов данных для вашего анализа.
Используйте API, чтобы просмотреть, кто разработал модели и кто их использует, чтобы помочь установить стандартные практики для лучшего управления. Для получения более подробной информации обратитесь к Управление.
Используйте API, чтобы просмотреть изменения и использование наборов данных, изучая экспозиции, происхождение и зависимости. Изучив это, вы можете узнать, как определять и строить более эффективные проекты dbt. Для получения более подробной информации обратитесь к Разработка.
Типы состояния проекта
Вы можете выполнять запросы к этим двум типам состояния проекта на уровне окружения:
- Определение — Логическое состояние ресурсов проекта dbt, которое обновляется при изменении проекта.
- Примененное — Результат успешного выполнения DAG dbt, который создает или описывает состояние базы данных (например:
dbt run,dbt test, свежесть источников и так далее).
Эти состояния позволяют вам легко изучать разницу между определением модели и ее примененным состоянием, чтобы вы могли получить ответы на такие вопросы, как: была ли выполнена модель? или выполнение не удалось? Примененные модели существуют как таблица/представление в платформе данных после их последнего успешного выполнения.



