Пользовательский интерфейс BigQuery запрашивает таблицу, но AI-ноутбук жалуется на разрешения - PullRequest
0 голосов
/ 03 апреля 2020

У меня есть два проекта. Проект Apple имеет данные в таблицах BQ. Проект Banana имеет доступ для чтения к таблицам Apple BQ. Когда я запускаю запросы, используя BQ UI Banana, все в порядке. Тот же запрос не работает в блокноте AI Banana.

Пользовательский интерфейс Banana 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 Banana:

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 голосов
/ 03 апреля 2020

В настоящее время вы предоставили разрешения для учетной записи проекта, но ноутбук пытается получить доступ к BigQuery через учетную запись службы, связанную с экземпляром Compute Engine, на котором запущен JupyterLab.

Для вычисления необходимо выполнить go Egnine> ваш ноутбук> Просмотр сведений о сети> и посмотреть, какую учетную запись службы он использует (в Banana). Затем предоставьте разрешения для этой учетной записи в разделе IAM проекта Apple.

...