ガイド

BigQuery連携

BigQuery連携

BigQueryを連携すると、自社データベース内にしかなかった注文・顧客・ログなどのテーブルを、広告パフォーマンスとあわせて分析できるようになります。チャット上で、メディアデータだけでは答えが出ない質問──実売ベースのROAS、新規とリピートの比較、会員ランク別の成果など──をそのまま聞けるようになります。

この連携は読み取り専用です。 AIはSELECTクエリしか実行しません。書き込み・更新・削除はすべてサーバーレベルでブロックされます。クエリ対象も、セットアップ時に明示的に選択したデータセットのみに制限されます。AIが未選択のデータセット名を「知っていた」としても、そのデータセットを開くことはできません。

事前に必要なもの

  • BigQueryデータへアクセス権のあるGoogleアカウント —— 連携時はこのアカウントでサインインします。

  • クエリ対象データセットへの読み取り権限 —— 少なくともBigQuery Data Viewer(roles/bigquery.dataViewer)。

  • クエリを実行するプロジェクトでのBigQuery Job User権限 —— BigQuery Job User(roles/bigquery.jobUser)です。BigQueryは必ずどこかのプロジェクトでクエリを実行します。このロールがないと、データは見えてもクエリを投げることができません。

  • 対象プロジェクトでBigQuery APIが有効になっていること —— そのプロジェクトで一度でもコンソールからBigQueryを使っていれば、すでに有効化されています。

権限が不足している場合、連携フローの最終ステップでブロックされます。 Neuroが保存前にアクセス検証のためのドライラン(無料)クエリを実行するためです。これにより「連携は成功しているのに、クエリは全部失敗する」という状態を防ぎます。

ステップ1 — Googleアカウントの接続

  1. ワークスペース内でData sourcesを開き、BigQueryカードを探してConnectをクリックします。

  2. つづいてSign in with Google

  3. をクリックし、対象データへアクセス権のあるアカウントでログインします。同意画面で、BigQuery関連の権限スコープに必ずチェックを入れてください。

チェックされていない権限はGoogle側で付与されないため、スキップすると先へ進むことができません。すでにGoogle AdsやGA4など他のGoogleサービスを連携済みの場合は、同じアカウントを再利用してかまいません。
modal-bigquery-step1.png
1단계 — BigQuery 연결 모달의 로그인 화면

BigQueryアクセスは新しい権限スコープになるため、追加の同意画面が表示される場合がありますが、想定どおりの動作です。

ステップ2 — プロジェクトの選択データが入っているプロジェクトを選択します。このプロジェクトでクエリが実行され、スキャンコストもこのプロジェクトに課金されます。で使用されます。

BigQueryのスキャンコストはご自身のGoogle Cloudプロジェクトに直接請求されます(Pango Neuroのプランとは別料金です)。そのため、次のステップでスキャン上限を設定します。
modal-bigquery-step2.png
2단계 — 접근 가능한 프로젝트 목록 (이름은 예시로 가림)

ステップ3 ― データセット選択とスキャン上限の設定

  1. クエリに利用を許可するデータセットを選択してください。初期状態では何も選択されていないため、指定したものだけがアクセス可能になります。

  2. 上部のドロップダウンでプロジェクトを切り替えて、複数プロジェクトのデータセットを1つの接続に含めることもできます(各プロジェクトでクエリアクセス権が必要です)。

  3. クエリ単位のスキャン上限(GiB) ― デフォルトは 10 です。これを超えるクエリは実行前にブロックされます。テーブルが大きい場合は上限を引き上げてください。

  4. 1日あたりのスキャン上限(GiB) ― デフォルトは 100 です。ワークスペース全体で1日にスキャンできる合計量で、UTCの深夜にリセットされます。クエリ単位の上限と組み合わせることで、小さなクエリの連発によるコスト増加を防ぎます。

  5. データの説明(任意) ― よく使うテーブルやコード値の意味をメモしておけます(最大2,000文字)。カラム名だけでは、AIはstatus = 3 の意味を理解できません。記入例:orders = 受注台帳、status 3 = 決済完了 / users.grade = 会員ランク(1〜5)

  6. 「N件のデータセットで接続」をクリックして完了します。

個人情報を含む生データのテーブルは公開しないでください。 クエリ結果のデータはAIでの解析に送信され、チャット履歴に保存されます。ワークスペースメンバーから閲覧できるため、必要なカラムだけを含むビューを作成し、そのビューを含むデータセットだけを選択する運用をおすすめします。
1つの接続内のすべてのデータセットは同じregionである必要があります。BigQueryは単一クエリで異なるregion間のテーブルを参照できないため、異なるregionのデータセットを同じ接続には含められません。
modal-bigquery-step3.png
3단계 — 데이터셋 선택과 스캔 한도 설정 (이름은 예시로 가림)

接続後の設定変更

そのサービスのBigQueryカードで、Settings(歯車)アイコンをクリックすると、再接続せずにオプションを変更できます。

  • クエリ可能なデータセットの追加・削除

  • クエリ単位/1日あたりのスキャン上限

  • データの説明

保存するには、1日あたりの上限はクエリ単位の上限以上である必要があります。1回のクエリより小さい1日上限を設定すると、その接続の全クエリが最初から拒否されてしまいます。

利用イメージ

接続が完了したら、あとはチャットに自然文で聞くだけです。AIが自動で許可されたデータセットとテーブルスキーマを参照するため、テーブルパスを覚えておく必要はありません。

  • 「今すぐ自分がアクセスできるdatasetとtableを一覧で見せて。」

  • 「ordersテーブルのschemaと、直近データのサンプルを見せて。」

  • 「先月の注文データとチャンネル別のad spendを結合して、実売上ベースでROASを計算して。」

  • 「新規顧客とリピーターを分けて、それぞれチャンネル別の貢献度を比較して。」

  • 「キャンペーン別に、会員ランクごとの購入コンバージョン率を出して見せて。」

コストが気になる場合は、「このqueryは実行しないで、scan volumeだけ教えて。」と言ってください。実際には実行せず、スキャンされるデータ量だけを見積もるので課金は発生しません。

トラブルシューティング

「You need to check your BigQuery permissions.」と表示される場合

Googleの同意画面で、BigQueryのscopeを飛ばしたときに発生します。チェックを入れていない権限はGoogle側で付与されないため、もう一度ログインしてBigQueryのオプションにチェックを入れてから続行してください。

「No accessible BigQuery projects found.」と表示される場合

ログイン中のGoogleアカウントに、BigQueryを使っているprojectへのアクセス権がないか、そのprojectでBigQuery APIが無効になっている可能性があります。多くの場合は、個人アカウントでログインしているなどの「アカウント違い」です。まずはアカウントを確認してください。それでも一覧が空のままなら、Google Cloud管理者にprojectへのアクセス付与とBigQuery APIの有効化を依頼してください。

「You don’t have permission to run queries in this project.」と表示される場合

データの閲覧権限はありますが、queryを実行する権限がありません。接続しているGoogleアカウントに、そのproject上でBigQuery Job User (roles/bigquery.jobUser)ロールを付与してから、もう一度お試しください。Data Viewerロールだけではquery実行はできません。

異なるregionのdatasetを同時に選択できない場合

これはBigQueryの仕様です(たとえば、asia-northeast3とUSにあるtableは、1つのqueryでjoinできません)。同じregion内のdatasetだけを選択してください。どうしてもregionをまたいで分析する必要がある場合は、どちらか一方のデータをもう一方のregionに複製して、regionをそろえる必要があります。workspaceごとにBigQuery接続は1つだけのため、接続を追加しても解決できません。

queryがscan limit超過でブロックされた場合

まずはqueryの範囲を絞ってみてください。日付範囲を短くする、パーティション列(例:date)でfilterする、SELECT *ではなく必要なcolumnだけを指定する、などです。BigQueryは読み取ったcolumn分だけ課金されるため、scan volumeを大きく削減できます。それでも足りない場合は、Settingsで1回あたりの上限値を引き上げてください。

1日のscan limitに達した場合

limitはUTCの深夜0時(韓国時間09:00)に自動でリセットされます。それ以前も作業を続けたい場合は、Settingsで1日あたりの上限値を引き上げてください。

AIが特定のcolumn値の意味を誤解してしまう場合

SettingsのData descriptionで、各tableやコード値の意味をドキュメント化してください。この説明文は毎回のqueryと一緒にAIに送られるため、分析精度が目に見えて改善します。頻出tableに絞って簡潔に書くのがおすすめです。説明が長くなりすぎると、1回のqueryあたりのコストが増えてしまいます。

AIが特定のdatasetを認識できないと言う場合

そのdatasetは初回接続時に選択されていません。Settingsから対象のdatasetを追加してください。変更は即時反映され、再接続は不要です。

接続や利用中に問題が発生した場合は、pango_plat@pango-gy.comまでご連絡ください。1〜2営業日以内に返信いたします。