【发布时间】:2021-12-08 08:21:15
【问题描述】:
DBT 中有没有一种方法可以通过查看文件夹结构以派生方式为模型创建自定义架构?
例如,假设这是我的结构:
models
└-- product1
└-- team1
| └-- model1.sql
└-- team2
└-- model2.sql
在这种情况下,model1.sql 将在架构 product1_team1 中创建,而 model2.sql 将在架构 product1_team2 中创建。我想我可以在dbt_project.yml 文件中“手动”指定这些,但我想知道是否有办法以自动方式执行此操作 - 以便在正确的模式中自动创建每个新模型或文件夹。
我正在查看自定义模式宏 (https://docs.getdbt.com/docs/building-a-dbt-project/building-models/using-custom-schemas),但它似乎是普通的 jinja 或简单的 Python 内置插件。不确定如何访问这些宏中的文件夹路径。
另外,有没有办法在 Python 中编写宏?因为知道文件路径和 os 模块可能相对简单。
【问题讨论】:
标签: dbt