BigQuery の新しい「保存済みクエリ」と「クエリの共有」を試してみた

BigQuery の新しい「保存済みクエリ」と「クエリの共有」を試してみた

2025.08.09

アノテーション、Google Cloud が大好きな村上です。

皆さんは、新しくなった「保存済みクエリ」と「クエリの共有」機能を活用していますか?よく使う分析クエリや、チームで共有したい定型クエリを保存しておける、非常に便利な機能です。

この記事では、新しくなった「保存済みクエリ」と「クエリの共有」が従来の機能とどのように違うのかを簡単に説明した後に、実際に新しい「保存済みクエリ」を作成し、IAM を使って他のユーザーに共有するまでの一連の流れをご紹介します。

従来の保存済みクエリと新しい保存済みクエリ

まず、「新しい保存済みクエリ」が「従来の保存済みクエリ」とどう変わるのかを整理します。

  • 従来の保存済みクエリ

    • 可視性を 「個人」 「プロジェクトレベル」 「一般公開」から選んでアクセスを制御していました。
    • 手軽でしたが、誰がどのクエリを見られるのか、管理が曖昧になりがちでした。
  • 新しい保存済みクエリ

    • クエリのアクセス制御を、Google Cloud の標準的な権限管理の仕組みである IAM (Identity and Access Management) で行います。
    • これにより、「Aさんには閲覧だけ許可」 「Bグループには編集も許可」といった、より厳密な権限管理が可能になります。

新しい保存済みクエリを作成して共有してみた

それでは、実際に新しい保存済みクエリを使ってみます。

Step 1 新しい保存済みクエリを作成する

まず、BigQueryの公開データセットを使って分析クエリを作成し、保存します。

  1. Google Cloudコンソールにログインし、BigQueryを開きます。
  2. 以下のSQLをクエリエディタに貼り付けます。BigQuery の一般公開データセットを利用して2013年にアメリカで人気だった名前TOP5を調べてみます。
-- 2013年に最も人気だった名前を調べる自分用のクエリ
SELECT name, SUM(number) as total
FROM `bigquery-public-data.usa_names.usa_1910_2013`
WHERE year = 2013
GROUP BY name
ORDER BY total DESC
LIMIT 5;
  1. BigQuery Studio を利用してクエリを実行しました。

スクリーンショット 2025-08-09 080039

  1. 作成したクエリを保存します。

スクリーンショット 2025-08-09 080052

  1. このクエリの名前を「test-query」として保存します。

スクリーンショット 2025-08-09 080152

Step 2 保存済みクエリを他アカウントユーザーと共有する

  1. 保存したクエリにおいて「権限を管理」を選択し、「ユーザー/グループを追加」をクリックします。

スクリーンショット 2025-08-09 080211

  1. test-query を共有したいプリンシパルを指定し、test-query に対してのロールを指定します。

スクリーンショット 2025-08-09 080305

今回は、test-query を共有したアカウントに対して、コードオーナーのロールを付与しました。

コードオーナーの IAM ロールを見て気づいたのですが、クエリの共有には内部的にサービス Dataform を利用していました。

スクリーンショット 2025-08-09 080353

  1. Google Cloud コンソールにログインしているアカウントを切り替えて、クエリが共有されているか確認します。左ペインに共有クエリ「test-query」が確認できました。

スクリーンショット 2025-08-09 080635

  1. もちろん、クエリの実行も可能です。

スクリーンショット 2025-08-09 080650

Step 3 保存済みクエリのバージョン管理を試してみる

  1. 男性の名前のみ検索するように、クエリに変更を加えます。

スクリーンショット 2025-08-09 081635

  1. 変更したクエリを上書き保存します。

スクリーンショット 2025-08-09 081723

  1. 一度、全てのタブを閉じて BigQuery Studio の画面を綺麗にします。

スクリーンショット 2025-08-09 081954

  1. 画面左ペインから、上書きされた「test-query」を表示させた後、画面右にある時計マークを押下することで、クエリの変更履歴を確認できます。

スクリーンショット 2025-08-09 082007

  1. クエリの変更差分がよく分かります。

スクリーンショット 2025-08-09 082032

  1. 前のバージョンへ、クエリを復元することも可能です。

スクリーンショット 2025-08-09 082101

まとめ

本記事では、IAM と連携した BigQuery の新しい「保存済みクエリ」と「クエリの共有」機能を紹介しました。
本機能を活用することで、定型クエリの共有が安全かつ効率的になるので、まずはよく使うクエリを 1 つ保存するところから始めて、日々の業務効率アップに役立ててみてください!

この記事がどなたかのお役に立てば幸いです。

参考

この記事をシェアする

facebookのロゴhatenaのロゴtwitterのロゴ

© Classmethod, Inc. All rights reserved.