group
- Модели
- Семена
- Снимки
- Тесты
- Анализы
- Метрики
- Семантические модели
- Сохраненные запросы
dbt_project.yml
models:
<resource-path>:
+group: GROUP_NAME
models/schema.yml
models:
- name: MODEL_NAME
config:
group: GROUP # changed to config in v1.10
models/<modelname>.sql
{{ config(
group='GROUP_NAME'
) }}
select ...
dbt_project.yml
models:
<resource-path>:
+group: GROUP_NAME
seeds/properties.yml
seeds:
- name: [SEED_NAME]
config:
group: GROUP_NAME # changed to config in v1.10
dbt_project.yml
snapshots:
<resource-path>:
+group: GROUP_NAME
snapshots/<filename>.sql
{% snapshot snapshot_name %}
{{ config(
group='GROUP_NAME'
) }}
select ...
{% endsnapshot %}
dbt_project.yml
data_tests:
<resource-path>:
+group: GROUP_NAME
tests/properties.yml
<resource_type>:
- name: <resource_name>
data_tests:
- <test_name>:
config:
group: GROUP_NAME
tests/<filename>.sql
{% test <testname>() %}
{{ config(
group='GROUP_NAME'
) }}
select ...
{% endtest %}
tests/<filename>.sql
{{ config(
group='GROUP_NAME'
) }}
analyses/<filename>.yml
analyses:
- name: ANALYSIS_NAME
config:
group: GROUP_NAME # changed to config in v1.10
dbt_project.yml
metrics:
<resource-path>:
+group: GROUP_NAME
models/metrics.yml
metrics:
- name: [METRIC_NAME]
config:
group: GROUP_NAME
dbt_project.yml
semantic-models:
<resource-path>:
+group: GROUP_NAME
models/semantic_models.yml
semantic_models:
- name: SEMANTIC_MODEL_NAME
config:
group: GROUP_NAME
dbt_project.yml
saved-queries:
<resource-path>:
+group: GROUP_NAME
models/semantic_models.yml
saved_queries:
- name: SAVED_QUERY_NAME
config:
group: GROUP_NAME
Обратите внимание, что для обратной совместимости group поддерживается как ключ верхнего уровня, но без возможностей наследования конфигурации.
Определение
Необязательная конфигурация для назначения ресурсу группы. Когда ресурс входит в группу, dbt позволяет ему ссылаться на приватные модели внутри той же группы.
Подробнее о доступе к ссылкам между ресурсами в группах см. раздел model access.
Примеры
Запретить модели группы 'маркетинг' ссылаться на приватную модель группы 'финансы'
Это полезно, если вы хотите предотвратить возможность другим группам строить на основе моделей, которые быстро меняются, являются экспериментальными или иначе внутренними для группы или команды.
models/schema.yml
models:
- name: finance_model
config:
group: finance # changed to config in v1.10
access: private # changed to config in v1.10
- name: marketing_model
config:
group: marketing # changed to config in v1.10
models/marketing_model.sql
select * from {{ ref('finance_model') }}
$ dbt run -s marketing_model
...
dbt.exceptions.DbtReferenceError: Ошибка разбора
Узел model.jaffle_shop.marketing_model попытался сослаться на узел model.jaffle_shop.finance_model,
что не разрешено, поскольку ссылающийся узел является приватным для группы финансов.
Связанные документы
Нашли ошибку?
0