dbt yaml selector 简单说明
dbt 基于yaml 的selector 实际上就是一个yaml 格式文件,我们在运行的时候可以指定一个配置好的selector 文件,这样实际运行的
时候就比较方便了
主要作用
- 清晰
- 方便版本控制
- 可重用
参考使用
- 配置
selectors.yml
selectors:
- name: nightly_diet_snowplow
description: "Non-incremental Snowplow models that power nightly exports"
definition:
# Optional `union` and `intersection` keywords map to the ` ` and `,` set operators:
union:
- intersection:
- '@source:snowplow'
- 'tag:nightly'
- 'models/export'
- exclude:
- intersection:
- 'package:snowplow'
- 'config.materialized:incremental'
- export_performance_timing
- 使用
dbt run --selector nightly_diet_snowplow
说明
以上只是一个简单的说明,关于详细配置可以参考官方文档,实际上selectors 还支持default 配置,这样只要包含了selectors.yml 文件就可以还行运行了,还是很方便的,参考default 定义, 比如以下默认只运行dalongv2 这个模型
selectors:
- name: default running dalongv2
description: >
Only resources from the root project.
Excludes resources defined in installed packages.
default: true
definition:
method: file
value: dalongv2
使用好selectors 有助于ci/cd
参考资料
https://docs.getdbt.com/reference/node-selection/yaml-selectors