database
- Модель
- Сиды
- Снапшоты
- Тесты
Укажите пользовательскую базу данных для модели в вашем файле dbt_project.yml
.
Например, если у вас есть модель, которую вы хотите загрузить в базу данных, отличную от целевой, вы можете настроить её следующим образом:
models:
your_project:
sales_metrics:
+database: reporting
Это приведет к тому, что сгенерированное отношение будет находиться в базе данных reporting
, и полное имя отношения будет reporting.finance.sales_metrics
вместо базы данных по умолчанию.
Настройте базу данных в вашем файле dbt_project.yml
.
Например, чтобы загрузить сид в базу данных под названием staging
вместо целевой базы данных, вы можете настроить его следующим образом:
seeds:
your_project:
product_categories:
+database: staging
Это приведет к тому, что сгенерированное отношение будет находиться в базе данных staging
, и полное имя отношения будет staging.finance.product_categories
.
Настройте базу данных для хранения результатов тестов в вашем файле dbt_project.yml
.
Например, чтобы сохранить результаты тестов в определенной базе данных, вы можете настроить это следующим образом:
tests:
+store_failures: true
+database: test_results
Это приведет к тому, что результаты тестов будут сохранены в базе данных test_results
.
Определение
При необходимости укажите пользовательскую базу данных для модели, сида или теста данных. (Чтобы указать базу данных для снапшота, используйте target_database
config).
Когда dbt создает отношение (/) в базе данных, оно создается как: {{ database }}.{{ schema }}.{{ identifier }}
, например, analytics.finance.payments
.
Стандартное поведени е dbt:
- Если пользовательская база данных не указана, база данных отношения — это целевая база данных (
{{ target.database }}
). - Если пользовательская база данных указана, база данных отношения — это значение
{{ database }}
.
Чтобы узнать больше о том, как изменить способ генерации database
для отношения в dbt, прочитайте Использование пользовательских баз данных.
Информация, специфичная для хранилища
- BigQuery:
project
иdatabase
взаимозаменяемы.