BigQuery UI查询表,但AI笔记本抱怨权限

时间:2020-04-03 05:44:27

标签: google-cloud-platform google-bigquery gcp-ai-platform-notebook

我有两个项目。苹果项目在BQ表中有数据。香蕉项目拥有对Apple BQ表的读取权限。当我使用Banana的BQ UI运行查询时,一切都很好。相同的查询在Banana的AI笔记本中不起作用。

香蕉BQ用户界面:

  AVG(A) as A_mean_exact,
  APPROX_QUANTILES(A, 100)[OFFSET(50)] AS A_percentile_50_approx,
  APPROX_QUANTILES(A, 100)[OFFSET(90)] AS A_percentile_90_approx

FROM `apple.v1003.apple_table`
WHERE selected_run = 1

工作正常。

香蕉的AI笔记本:

from google.cloud import bigquery
client = bigquery.Client(location="US", project="banana") # I also tried apple; same error
print("Client creating using default project: {}".format(client.project)) 

Client creating using default project: banana

query = """
SELECT 
  AVG(A) as A_mean_exact,
  APPROX_QUANTILES(A, 100)[OFFSET(50)] AS A_percentile_50_approx,
  APPROX_QUANTILES(A, 100)[OFFSET(90)] AS A_percentile_90_approx

FROM `apple.v1003.apple_table`
WHERE selected_run = 1
"""
query_job = client.query(
    query,
    location="US",
) 

df = query_job.to_dataframe()
df
Forbidden: 403 Access Denied: Table apple:v1003.apple_table: User does not have permission to query table apple:v1003.apple_table.

能否请您提出我应该研究的内容?我只是从AI Hub开始。

1 个答案:

答案 0 :(得分:2)

您当前已为您的项目帐户授予权限,但笔记本计算机正尝试通过与运行JupyterLab的Compute Engine实例相关联的服务帐户访问BigQuery。

您必须转到Compute Egnine>笔记本计算机>查看网络详细信息>,然后查看使用的服务帐户(在Banana中)。然后,在Apple的项目IAM部分中为该帐户授予权限。

相关问题