来自不同 Google 项目的 DBT select 大查询 table
DBT select Big Query table from different Google Project
我正在使用 DBT 在 Big Query 中读写 table,所有 运行 在我的 Google 项目 X 中。
我有一个 table,我想从另一个 Google 项目 Y 中读取它并放入 DBT 模型(然后将其保存为项目中的 table X)。
可以吗?如果是,我在哪里定义不同的项目 FROM {{ source('dataset_project_y', 'table_to_read')}}
?
首先,您需要在 source.yml 文件中声明来源。
https://docs.getdbt.com/docs/building-a-dbt-project/using-sources#declaring-a-source
例如,创建一个source_y.yml
sources:
- name: dataset_project_y
schema: dataset_y
database: 'project_y'
tables:
- name: table_to_read
identifier: table_to_read
之后,
您可以在任何 dbt 模型中参考来源 table_to_read
,在任何 dbt 模型的 SQL 语句中参考来源 select。
https://docs.getdbt.com/docs/building-a-dbt-project/using-sources#selecting-from-a-source
例如,要在 dbt_model_x.sql
中使用 table_to_read
{{
config(
materialized = "view",
)
}}
SELECT * FROM {{ source('dataset_project_y', 'table_to_read')}}
我正在使用 DBT 在 Big Query 中读写 table,所有 运行 在我的 Google 项目 X 中。
我有一个 table,我想从另一个 Google 项目 Y 中读取它并放入 DBT 模型(然后将其保存为项目中的 table X)。
可以吗?如果是,我在哪里定义不同的项目 FROM {{ source('dataset_project_y', 'table_to_read')}}
?
首先,您需要在 source.yml 文件中声明来源。
https://docs.getdbt.com/docs/building-a-dbt-project/using-sources#declaring-a-source
例如,创建一个source_y.yml
sources:
- name: dataset_project_y
schema: dataset_y
database: 'project_y'
tables:
- name: table_to_read
identifier: table_to_read
之后,
您可以在任何 dbt 模型中参考来源 table_to_read
,在任何 dbt 模型的 SQL 语句中参考来源 select。
https://docs.getdbt.com/docs/building-a-dbt-project/using-sources#selecting-from-a-source
例如,要在 dbt_model_x.sql
中使用table_to_read
{{
config(
materialized = "view",
)
}}
SELECT * FROM {{ source('dataset_project_y', 'table_to_read')}}