默认项目 ID 的 BigQueryInsertJobOperator 配置

BigQueryInsertJobOperator Configuration for default project ID

我遇到这样一种情况,我的数据位于另一个 GCP 项目中,比如“data-pro”,而我的计算项目设置为另一个 GCP 项目,该项目可以访问“data-pro”的表。 那么有没有办法指定查询必须使用的默认项目 ID 运行 ? 我可以看到有默认数据集、参数 .. 但没有默认 projectID。

所以我的查询如下:

select name ,id from employeedDB.employee .// this employeedDB is in data-proc

我的 BigQueryInsertJobOperator 配置如下:

BigQueryInsertJobOperator(dag=dag, task_id=name, gcp_conn_id=connection_id,--//connection_id over compute-proc configuration={ "query": { "query": "{% include '"+sqlFile+"' %}", "useLegacySql": False }, }, pool='bqJobPool')

您应该为不同的项目定义不同的连接 ID(您可以通过每个任务中的参数或通过“default_args”功能来设置它。

我觉得SQL语句可以改成:

select name ,id from `<project_id>:employeedDB.employee`