使用 BigQuery public 数据集作为源时权限被拒绝

Permission denied when using BigQuery public data set as a source

在设置指向 Big Query public 数据集的源并使用 source() 函数在我的 dbt 模型中引用它时,我在 dbt 运行 上收到此错误:

Database Error
  Access Denied: Table bigquery-public-data:INFORMATION_SCHEMA.SCHEMATA: User does not have permission to query table bigquery-public-data:INFORMATION_SCHEMA.SCHEMATA.

它似乎在尝试从 public 数据集中查询信息模式。是否可以在我的 dbt 项目中使用 public 数据集作为源?

这在早期版本的 dbt 中是预期的 — 它与您无法将 bigquery-public-data.INFORMATION_SCHEMA.SCHEMATA 上的权限授予 public () 这一事实有关。

幸运的是,此问题已在 dbt v0.17.0 中得到解决(relevant PR)— try upgrading to that version,错误应该会消失!

当我的数据处理位置在欧盟/在 profiles.yml 文件中将其更改为美国时我遇到了这个问题(当然也需要在美国的数据集位置)并成功 运行 正如教程中预期的那样。我在版本 DBT 1.x

中有它