【问题标题】:Permission denied when using BigQuery public data set as a source使用 BigQuery 公共数据集作为源时权限被拒绝
【发布时间】:2020-08-20 20:51:11
【问题描述】:

在设置指向 Big Query 公共数据集的源并使用 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.

它似乎正在尝试从公共数据集中查询信息架构。是否可以在我的 dbt 项目中使用公共数据集作为源?

【问题讨论】:

    标签: google-bigquery dbt


    【解决方案1】:

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

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

    【讨论】:

    • 我在 0.21.0 版上遇到同样的错误
    • 在 dbt-tutoriel 尝试使用 dbt v0.21.0 查询 dbt-tutorial:jaffle_shop.customers 之后,我使用 dbt-CLI 也遇到了这个错误。运行dbt debug 时没有任何错误。 dbt runDatabase Error in model stg_customers (models/staging/stg_customers.sql) Access Denied: Table dbt-tutorial:jaffle_shop.customers: User does not have permission to query table dbt-tutorial:jaffle_shop.customers. compiled SQL at target/run/jaffle_shop/models/staging/stg_customers.sql
    【解决方案2】:

    当我的数据处理位置在欧盟/profiles.yml 文件中将其更改为美国时,我遇到了这个问题(当然也需要在美国的数据集位置)并且宾果游戏按教程中的预期运行。我在 DBT 1.x 版本中有它

    【讨论】:

    • 这并不能真正回答问题。如果您有其他问题,可以点击 提问。要在此问题有新答案时收到通知,您可以follow this question。一旦你有足够的reputation,你也可以add a bounty 来引起对这个问题的更多关注。 - From Review
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-01-23
    • 1970-01-01
    • 2021-06-28
    • 1970-01-01
    • 1970-01-01
    • 2016-04-25
    • 1970-01-01
    相关资源
    最近更新 更多