BigQuery データ キャンバスで分析する
BigQuery Studio データ キャンバス(Gemini in BigQuery の機能)を使用すると、自然言語プロンプトと分析ワークフローのグラフィック インターフェースを使用して、データを検索、変換、クエリ、可視化できます。
分析ワークフローの場合、BigQuery データ キャンバスは有向非巡回グラフ(DAG)を使用します。これにより、ワークフローのグラフィック ビューが提供されます。BigQuery データ キャンバスでは、クエリ結果に基づいて繰り返し処理を行うことができます。また、1 か所で複数の問い合わせ分岐を処理できます。
BigQuery データ キャンバスは、分析タスクを高速化し、データ アナリスト、データ エンジニアなどのデータ プロフェッショナルがデータから分析情報を導出するプロセスを支援するように設計されています。特定のツールに関する技術的な知識は必要ありません。SQL の読み取りと書き込みに関する基本的な知識があれば十分です。BigQuery データ キャンバスは、Dataplex メタデータと連携し、自然言語に基づいて適切なテーブルを識別します。
BigQuery データ キャンバスは、ビジネス ユーザーが直接使用することを目的としたものではありません。
BigQuery データ キャンバスは、BigQuery の Gemini を使用して、データの検索、SQL の作成、グラフの生成、データの要約を行います。
Gemini for Google Cloud がデータを使用する方法とタイミングについての説明をご確認ください。
機能
BigQuery データ キャンバスでは、次のことができます。
Dataplex メタデータで自然言語クエリまたはキーワード検索構文を使用して、テーブル、ビュー、マテリアライズド ビューなどのアセットを検索します。
次のような基本的な SQL クエリには自然言語を使用します。
FROM
句、数学関数、配列、構造体を含むクエリ。- 2 つのテーブルの
JOIN
オペレーション。
次のグラフタイプを使用してデータを可視化します。
- 棒グラフ
- ヒートマップ
- 折れ線グラフ
- 円グラフ
- 散布図
自然言語を使用して目的を説明することで、カスタム ビジュアリゼーションを作成できます。
データ分析情報の自動化。
制限事項
自然言語コマンドは、以下の操作では適切に機能しない場合があります。
- BigQuery ML
- Apache Spark
- オブジェクト テーブル
- BigLake
INFORMATION_SCHEMA
個のビュー- JSON
- ネストされたフィールドと繰り返しフィールド
- 複雑な関数とデータ型(
DATETIME
、TIMEZONE
など)
Geomap グラフではデータの可視化は機能しません。
プロンプトのベスト プラクティス
適切なプロンプト手法を使用すると、複雑な SQL クエリを生成できます。次の候補は、BigQuery データ キャンバスで自然言語プロンプトを絞り込み、クエリの精度を高めるのに役立ちます。
わかりやすく書く。リクエストは明確に記述し、あいまいな表現は避けましょう。
直接的な質問をする。最も正確な回答を得るには、一度に 1 つの質問をし、プロンプトを簡潔にします。必要に応じて、BigQuery データ キャンバスでプロンプトを別のノードに分割します。
焦点を絞った明示的な指示を提供する。プロンプトでキーワードを強調します。
演算の順序を指定する。手順を明確かつ順序立てて提供します。タスクを小さく、集中できるステップに分割します。
改善して繰り返す。さまざまなフレーズやアプローチを試して、最良の結果が得られるものを探します。
詳細については、BigQuery データ キャンバスのプロンプト記述に関するベスト プラクティスをご覧ください。
始める前に
- Google Cloud プロジェクトで Gemini in BigQuery が有効になっていることを確認します。通常、このステップは管理者が行います。
- BigQuery データキャンバスを使用するには、必要な Identity and Access Management(IAM)権限があることを確認します。
必要なロール
BigQuery データ キャンバスを使用するために必要な権限を取得するには、プロジェクトに対する次の IAM ロールを付与するよう管理者に依頼します。
-
BigQuery Studio ユーザー (
roles/bigquery.studioUser
) -
Gemini for Google Cloud ユーザー (
roles/cloudaicompanion.user
)
ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。
BigQuery における IAM ロールと権限の詳細については、IAM の概要をご覧ください。
BigQuery データ キャンバスを使用する
BigQuery データキャンバスは、Google Cloud コンソール、クエリ、テーブルで使用できます。
[BigQuery] ページに移動します。
クエリエディタで、[
SQL クエリ] の横にある [ 新規作成]、[データキャンバス] の順にクリックします。[自然言語] プロンプト フィールドに、自然言語プロンプトを入力します。
たとえば、
Find me tables related to trees
と入力すると、BigQuery データキャンバスから、bigquery-public-data.usfs_fia.plot_tree
やbigquery-public-data.new_york_trees.tree_species
などの一般公開データセットを含む、使用可能なテーブルのリストが返されます。テーブルを選択してください。
選択したテーブルのテーブルノードが BigQuery データ キャンバスに追加されます。スキーマ情報の表示、テーブルの詳細の表示、データのプレビューを行うには、テーブルノードにある各種タブを選択します。
サンプル ワークフローを試す
このセクションでは、分析ワークフローで BigQuery データキャンバスを使用するさまざまな方法について説明します。
ワークフローの例: データの検索、クエリ、可視化
この例では、BigQuery データ キャンバスの自然言語プロンプトを使用して、データを検索し、クエリを生成してクエリを編集します。次に、グラフを作成します。
プロンプト 1: データを見つける
Google Cloud コンソールで [BigQuery] ページに移動します。
クエリエディタで、[
SQL クエリ] の横にある [ 新規作成]、[データキャンバス] の順にクリックします。[自然言語] プロンプト フィールドに、次の自然言語プロンプトを入力します。
Chicago taxi trips
BigQuery データ キャンバスは、Dataplex メタデータに基づいて、使用可能なテーブルのリストを生成します。複数のテーブルを選択できます。
bigquery-public-data.chicago_taxi_trips.taxi_trips
テーブルを選択し、[キャンバスに追加] をクリックします。taxi_trips
のテーブルノードが BigQuery データ キャンバスに追加されます。スキーマ情報の表示、テーブルの詳細の表示、データのプレビューを行うには、テーブルノードにある各種タブを選択します。
プロンプト 2: 選択したテーブルで SQL クエリを生成する
bigquery-public-data.chicago_taxi_trips.taxi_trips
テーブルの SQL クエリを生成するには、次の操作を行います。
データ キャンバスで [クエリ] をクリックします。
[自然言語] プロンプト フィールドに次のように入力します。
Get me the 100 longest trips
BigQuery データ キャンバスは、次のような SQL クエリを生成します。
SELECT taxi_id, trip_start_timestamp, trip_end_timestamp, trip_miles FROM `bigquery-public-data.chicago_taxi_trips.taxi_trips` ORDER BY trip_miles DESC LIMIT 100;
プロンプト 3: クエリを編集する
生成したクエリを編集するには、クエリを手動で編集するか、自然言語プロンプトを変更してクエリを再作成します。この例では、自然言語プロンプトを使用してクエリを編集し、顧客が現金で支払ったルートのみを選択します。
[自然言語] プロンプト フィールドに次のように入力します。
Get me the 100 longest trips where the payment type is cash
BigQuery データ キャンバスは、次のような SQL クエリを生成します。
SELECT taxi_id, trip_start_timestamp, trip_end_timestamp, trip_miles FROM `PROJECT_ID.chicago_taxi_trips_123123.taxi_trips` WHERE payment_type = 'Cash' ORDER BY trip_miles DESC LIMIT 100;
上の例で、
PROJECT_ID
は Google Cloud プロジェクトの ID です。クエリの結果を表示するには、[実行] をクリックします。
グラフを作成する
- データ キャンバスで [可視化] をクリックします。
[棒グラフの作成] をクリックします。
BigQuery データ キャンバスで、ルート ID ごとに最も移動距離の長いルートを表示する棒グラフを作成します。BigQuery データ キャンバスでは、グラフだけでなく、可視化の基となるデータの主な情報が要約されます。
省略可: 次のいずれかを行います。
- グラフを変更するには、[編集] をクリックし、[ビジュアリゼーションを編集] ペインでグラフを編集します。
- データ キャンバスを共有するには、[共有] をクリックし、[リンクを共有] をクリックして、BigQuery データ キャンバスのリンクをコピーします。
- データ キャンバスをクリーンアップするには、 [その他の操作]、 [キャンバスを消去] の順に選択します。このステップを完了すると、空白のキャンバスが表示されます。
ワークフローの例: テーブルを結合する
この例では、BigQuery データ キャンバスの自然言語プロンプトを使用して、データを検索し、テーブルを結合します。次に、クエリをノートブックとしてエクスポートします。
プロンプト 1: データを見つける
[自然言語] プロンプト フィールドに、次のプロンプトを入力します。
Information about trees
BigQuery データ キャンバスには、ツリーに関する情報を含むテーブルがいくつか表示されます。
この例では、
bigquery-public-data.new_york_trees.tree_census_1995
テーブルを選択して [キャンバスに追加] をクリックします。表がキャンバスに表示されます。
プロンプト 2: 住所でテーブルを結合する
データキャンバスで [結合] をクリックします。
BigQuery データ キャンバスに、結合するテーブルの候補が表示されます。
新しい自然言語プロンプト フィールドを開くには、[テーブルを検索] をクリックします。
[自然言語] プロンプト フィールドに、次のプロンプトを入力します。
Information about trees
bigquery-public-data.new_york_trees.tree_census_2005
テーブルを選択し、[キャンバスに追加] をクリックします。表がキャンバスに表示されます。
データキャンバスで [結合] をクリックします。
[このキャンバス] セクションで [表セル] チェックボックスをオンにして、[OK] をクリックします。
[自然言語] プロンプト フィールドに、次のプロンプトを入力します。
Join on address
BigQuery データ キャンバスで、これらの 2 つのテーブルをアドレスで結合する SQL クエリが提案されます。
SELECT * FROM `bigquery-public-data.new_york_trees.tree_census_2015` AS t2015 JOIN `bigquery-public-data.new_york_trees.tree_census_1995` AS t1995 ON t2015.address = t1995.address;
クエリを実行して結果を表示するには、[実行] をクリックします。
クエリをノートブックとしてエクスポートする
BigQuery データ キャンバスでは、クエリをノートブックとしてエクスポートできます。
- データ キャンバスで [ノートブックとしてエクスポート] をクリックします。
- [ノートブックを保存] ペインで、ノートブックの名前と保存先のリージョンを入力します。
- [保存] をクリックします。ノートブックが正常に作成されます。
- 省略可: 作成したノートブックを確認するには、[開く] をクリックします。
ワークフローの例: プロンプトを使用してグラフを編集する
この例では、BigQuery データ キャンバスの自然言語プロンプトを使用して、データを検索、クエリ、フィルタし、可視化の詳細を編集します。
プロンプト 1: データを見つける
米国の名前に関するデータを検索するには、次のプロンプトを入力します。
Find data about USA names
BigQuery データ キャンバスがテーブルのリストを生成します。
この例では、
bigquery-public-data.usa_names.usa_1910_current
テーブルを選択して [キャンバスに追加] をクリックします。
プロンプト 2: データをクエリする
データをクエリするには、データキャンバスで [クエリ] をクリックし、次のプロンプトを入力します。
Summarize this data
BigQuery データ キャンバスは、次のようなクエリを生成します。
SELECT state, gender, year, name, number FROM `bigquery-public-data.usa_names.usa_1910_current`
[実行] をクリックします。クエリ結果が表示されます。
プロンプト 3: データをフィルタする
- データ キャンバスで [これらの結果に対してクエリを実行する] をクリックします。
データをフィルタするには、[SQL] プロンプト フィールドに次のプロンプトを入力します。
Get me the top 10 most popular names in 1980
BigQuery データ キャンバスは、次のようなクエリを生成します。
SELECT name, SUM(number) AS total_count FROM `bigquery-public-data`.usa_names.usa_1910_current WHERE year = 1980 GROUP BY name ORDER BY total_count DESC LIMIT 10;
クエリを実行すると、1980 年に生まれた子供の最も一般的な名前を 10 個含むテーブルが返されます。
グラフを作成、編集する
データ キャンバスで [可視化] をクリックします。
BigQuery データ キャンバスに、棒グラフ、円グラフ、折れ線グラフ、カスタム可視化など、可視化オプションの候補が表示されます。
この例では、[棒グラフの作成] をクリックします。
BigQuery データ キャンバスで、次のような棒グラフが作成されます。
BigQuery データ キャンバスでは、グラフだけでなく、可視化の基となるデータの主な情報が要約されます。グラフを変更するには、[Visualization details] をクリックして、サイドパネルでグラフを編集します。
プロンプト 4: ビジュアリゼーションの詳細を編集する
[Visualization] プロンプト フィールドに次のように入力します。
Create a bar chart sorted high to low, with a gradient
BigQuery データ キャンバスで、次のような棒グラフが作成されます。
省略可: 変更を加えるには、[編集] をクリックします。
[可視化を編集] ペインが表示されます。グラフのタイトル、X 軸の名前、Y 軸の名前などの詳細を編集できます。また、[JSON エディタ] タブをクリックすると、JSON 値に基づいてグラフを直接編集できます。
すべてのデータ キャンバスを表示する
プロジェクト内のすべてのデータキャンバスのリストを表示するには、次の操作を行います。
Google Cloud コンソールで [BigQuery] ページに移動します。
[エクスプローラ] ペインで、[データキャンバス] の横にある
(アクションを表示)をクリックし、次のいずれかを行います。
- 現在のタブでリストを開くには、[すべて表示] をクリックします。
- リストを新しいタブで開くには、[すべてを表示] > [新しいタブ] をクリックします。
- 分割タブでリストを開くには、[すべてを表示] > [タブを分割] をクリックします。
データ キャンバスのメタデータを表示する
データキャンバスのメタデータを表示する手順は次のとおりです。
Google Cloud コンソールで [BigQuery] ページに移動します。
[エクスプローラ] ペインで、プロジェクトと [データキャンバス] フォルダを開き、必要に応じて [共有データキャンバス] フォルダを開きます。メタデータを表示するデータキャンバスの名前をクリックします。
[概要] ペインで、使用されているリージョンや最終更新日など、データキャンバスに関する情報を確認します。
データ キャンバスのバージョンを操作する
データキャンバスのバージョンを表示、比較、復元できます。
データ キャンバスのバージョンを表示、比較する
データキャンバスの異なるバージョンを表示して、現在のバージョンと比較する手順は次のとおりです。
Google Cloud コンソールで [BigQuery] ページに移動します。
[エクスプローラ] ペインで、プロジェクトと [データキャンバス] フォルダを開き、必要に応じて [共有データキャンバス] フォルダを開きます。アクティビティを表示するデータ キャンバスの名前をクリックします。
[アクティビティ] タブをクリックすると、データキャンバスのバージョンが日付の降順で表示されます。
データキャンバス バージョンの横にある
[アクションを表示] をクリックし、[比較] をクリックします。比較ペインが開き、選択したデータキャンバスのバージョンと現在のデータキャンバスのバージョンを比較します。省略可: 個別のペインではなくインラインでバージョンを比較するには、[比較]、[インライン] の順にクリックします。
データ キャンバスのバージョンを復元する
データキャンバスのバージョンを復元するには、次のいずれかのオプションを使用します。比較ペインから復元すると、復元するかどうかを選択する前に、データキャンバスの以前のバージョンを現在のバージョンと比較できます。
アクティビティ ペイン
- [エクスプローラ] ペインで、プロジェクトと [データキャンバス] フォルダを開き、必要に応じて [共有データキャンバス] フォルダを開きます。以前のバージョンを復元するデータキャンバスの名前をクリックします。
- [アクティビティ] ペインを選択します。
- 復元するデータキャンバスのバージョンの横にある (アクションを表示)をクリックし、[復元] をクリックします。
- [確認] をクリックして、操作を確定します。
比較ペイン
- [エクスプローラ] ペインで、プロジェクトと [データキャンバス] フォルダを開き、必要に応じて [共有データキャンバス] フォルダを開きます。以前のバージョンを復元するデータキャンバスの名前をクリックします。
- [アクティビティ] ペインを選択します。
- データキャンバス バージョンの横にある (アクションを表示)をクリックし、[比較] をクリックします。比較ペインが開き、選択したデータキャンバスのバージョンと最新のデータキャンバスのバージョンを比較します。
- 比較後に以前のデータキャンバス バージョンを復元する場合は、[復元] をクリックします。
- [確認] をクリックして、操作を確定します。
料金
この機能の料金の詳細については、Gemini in BigQuery の料金の概要をご覧ください。
割り当てと上限
この機能の割り当てと上限については、Gemini in BigQuery の割り当てをご覧ください。
フィードバックを送信
Google にフィードバックを送信して、BigQuery データ キャンバスの候補の改善にご協力ください。フィードバックを送信するには、次の操作を行います。
Google Cloud コンソールのツールバーで、[フィードバックを送信] をクリックします。
(省略可)DAG JSON 情報をコピーしてフィードバックに追加のコンテキストを提供するには、[
コピー] をクリックします。フォームに記入してフィードバックを送信するには、[フォーム] をクリックします。
データ共有設定はプロジェクト全体に適用されます。これは、serviceusage.services.enable
と serviceusage.services.list
の IAM 権限を持つプロジェクト管理者のみ設定できます。Trusted Tester プログラムでのデータの使用について詳しくは、Google Cloud Trusted Tester プログラムの Gemini をご覧ください。
この機能に関するフィードバックを直接送信するには、datacanvas-feedback@google.com 宛てにメールをお送りください。
次のステップ
Gemini アシスタント機能を使用してクエリを作成する方法を学習する。
ノートブックの作成方法を学習する。