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

Конфигурации источников

Доступные конфигурации

Общие конфигурации

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

dbt_project.yml

Конфигурирование источников

Источники могут быть настроены через блок config: в их .yml определениях или из файла dbt_project.yml под ключом sources:. Эта конфигурация наиболее полезна для настройки источников, импортированных из пакета.

Вы можете отключить источники, импортированные из пакета, чтобы предотвратить их отображение в документации или предотвратить выполнение проверок свежести данных источника на таблицах источников, импортированных из пакетов.

  • Примечание: Чтобы отключить таблицу источника, вложенную в YAML-файл в подпапке, вам нужно указать подпапку(и) в пути к этому YAML-файлу, а также имя источника и имя таблицы в файле dbt_project.yml.

    Следующий пример показывает, как отключить таблицу источника, вложенную в YAML-файл в подпапке:

    dbt_project.yml

Примеры

Следующие примеры показывают, как настроить источники в вашем проекте dbt.

Отключить все источники, импортированные из пакета
Условно включить один источник
Отключить один источник из пакета
Настроить источник с event_time
Настроить метаданные для источника

Отключить все источники, импортированные из пакета

Чтобы применить конфигурацию ко всем источникам, включенным из пакета, укажите вашу конфигурацию под именем проекта в конфигурации sources: как часть пути к ресурсу.

dbt_project.yml
sources:
events:
+enabled: false

Условно включить один источник

При определении источника вы можете отключить весь источник или конкретные таблицы источников, используя встроенное свойство config:

models/sources.yml
version: 2

sources:
- name: my_source
config:
enabled: true
tables:
- name: my_source_table # включено
- name: ignore_this_one # не включено
config:
enabled: false

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

models/sources.yml
version: 2

sources:
- name: my_source
tables:
- name: my_source_table
config:
enabled: "{{ var('my_source_table_enabled', false) }}"

Отключить один источник из пакета

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

dbt_project.yml
sources:
events:
clickstream:
+enabled: false

Аналогично, вы можете отключить конкретную таблицу из источника, указав путь к ресурсу с именем пакета, именем источника и именем таблицы:

dbt_project.yml
sources:
events:
clickstream:
pageviews:
+enabled: false

Настроить источник с event_time

Настроить метаданные для источника

Используйте поле meta для назначения метаданных источникам. Это полезно для отслеживания дополнительного контекста, документации, логирования и многого другого.

Например, вы можете добавить информацию meta к источнику clickstream, чтобы включить информацию о системе источника данных:

dbt_project.yml
sources:
events:
clickstream:
+meta:
source_system: "Google analytics"
data_owner: "marketing_team"

Пример конфигурации источника

Следующая конфигурация источника является допустимой для проекта с:

  • name: jaffle_shop
  • Пакетом под названием events, содержащим несколько таблиц источников
dbt_project.yml
name: jaffle_shop
config-version: 2
...
sources:
# имена проектов
jaffle_shop:
+enabled: true

events:
# имена источников
clickstream:
# имена таблиц
pageviews:
+enabled: false
link_clicks:
+enabled: true
0