BigQuery データの準備の概要

このドキュメントでは、BigQuery で AI を活用したデータ準備について説明します。データ準備は BigQuery Studio リソースであり、Gemini in BigQuery を使用してデータを分析し、データのクリーニング、変換、拡充のためのインテリジェントな提案を提供します。手動によるデータ準備タスクに費やす時間と労力を大幅に削減できます。データ準備のオケストレーションは Dataform によって行われます。

利点

  • Gemini が生成したコンテキスト対応の変換候補を使用すると、データ パイプラインの開発に費やす時間を短縮できます。
  • 生成された結果をプレビューで検証し、自動スキーマ マッピングを使用してデータ品質のクリーンアップと拡充の候補を受け取ることができます。
  • Dataform を使用すると、継続的インテグレーションと継続的開発(CI/CD)プロセスを使用して、コードレビューとソース管理のためのチーム間のコラボレーションをサポートできます。

必要なロール

データを準備するユーザーと、ジョブを実行する Dataform サービス アカウントには、Identity and Access Management(IAM)ロールが必要です。詳細については、必要なロールBigQuery 用に Gemini を設定するをご覧ください。

データ準備のエントリ ポイント

データ準備は [BigQuery Studio] ページで作成、管理できます(BigQuery でデータ準備エディタを開くをご覧ください)。

BigQuery データ準備でテーブルを開くと、認証情報を使用して BigQuery ジョブが実行されます。実行すると、選択したテーブルからサンプル行が作成され、結果が同じプロジェクトの一時テーブルに書き込まれます。Gemini は、サンプルデータとスキーマを使用して、データ準備エディタに表示されるデータ準備の候補を生成します。

データ準備エディタのビュー

データ準備は、[BigQuery Studio] ページのタブとして表示されます。各タブには、一連のサブタブ(データ準備のビュー)があり、ここでデータ準備を設計して管理します。

データビュー

新しいデータ準備を作成すると、データ準備エディタのタブが開き、テーブルの代表的なサンプルを含むデータビューが表示されます。既存のデータ準備の場合は、データ準備パイプラインのグラフビューでノードをクリックしてデータビューに移動できます。

データビューでは、次のことができます。

  • データを操作して、データ準備の手順を作成します。
  • Gemini の候補を適用します。
  • セルにサンプル値を入力して、Gemini の候補の質を高めます。

テーブルの各列の上に、統計プロファイル(ヒストグラム)が表示され、プレビュー行に各列の上位値の数が示されます。

グラフ表示

グラフビューは、データ準備の概要を視覚的に示します。データ準備を開くと、コンソールの [BigQuery Studio] ページのタブとして表示されます。グラフには、データ準備パイプラインのすべてのステップのノードが表示されます。グラフ上のノードを選択して、そのノードが表すデータ準備ステップを構成できます。

スキーマビュー

データ準備スキーマビューには、アクティブなデータ準備ステップの現在のスキーマが表示されます。表示されるスキーマは、データビューの列と一致します。

スキーマビューでは、列の削除などの専用のスキーマ オペレーションを実行できます。これにより、[適用されたステップ] リストにステップも作成されます。

Gemini による提案

Gemini は、コンテキストに応じた候補を提案し、次のデータ準備タスクを支援します。

  • 変換とデータ品質ルールの適用
  • データの標準化と拡充
  • スキーマ マッピングの自動化

各候補は、データ準備エディタの候補リストのカードに表示されます。このカードには次の情報が記載されています。

  • ステップの大まかなカテゴリ(行を保持変換など)
  • ステップの説明(COLUMN_NAMENULL でない場合、行を保持するなど)
  • ステップの実行に使用される対応する SQL 式

候補カードをプレビューまたは適用したり、候補を微調整したりできます。手順を手動で追加することもできます。詳細については、Gemini でデータを準備するをご覧ください。

Gemini からの候補を微調整するには、列で変更する内容の例を示すことができます。

データ サンプリング

BigQuery はデータ サンプリングを使用して、データ準備のプレビューを提供します。サンプルは、各ノードのデータビューで確認できます。サンプルのデータは自動的に更新されません。詳細については、データ準備のサンプルを更新するをご覧ください。

書き込みモード

費用と処理時間を最適化するには、書き込みモードの設定を変更して、ソースからの新しいデータを増分処理します。たとえば、BigQuery にレコードが毎日挿入されるテーブルがあり、変更されたデータを反映する Looker ダッシュボードがある場合は、BigQuery データ準備をスケジュールして、ソーステーブルから新しいレコードをインクリメンタルに読み取り、宛先テーブルに伝播できます。

準備されたデータを宛先テーブルに書き込む方法を構成するには、データを増分処理してデータ準備を最適化するをご覧ください。

次の書き込みモードがサポートされています。

書き込みモード オプション 説明
完全な更新 準備したデータを挿入して、宛先テーブルのすべてのデータを置き換えます。テーブルは切り捨てられるのではなく、再作成されます。宛先テーブルへの書き込みのデフォルト モードは完全更新です。
追加 準備したデータを宛先テーブルの新しい行に挿入します。
インクリメンタル 宛先テーブルには、新しいデータまたは、増分列の選択に応じて変更されたデータのみを挿入します。

サポートされているデータ準備手順

BigQuery は、次のタイプのデータ準備ステップをサポートしています。

ステップの種類 説明
ソース 読み取る BigQuery テーブルを選択するか、結合ステップを追加すると、ソースが追加されます。
変換 SQL 式を使用してデータのクリーニングと変換を行います。次の式の候補カードが表示されます。
  • 型変換関数(CAST など)
  • SUBSTRCONCATREPLACEUPPERLOWERTRIM などの文字列関数
  • 日時関数(PARSE_DATETIMESTAMPEXTRACTDATE_ADD など)
  • JSON 関数(JSON_EXTRACT など)

手動変換ステップで有効な BigQuery SQL 式を使用することもできます。例:
  • ワット時をキロワット時に変換するなど、数値を使った計算
  • 配列関数(ARRAY_AGGARRAY_CONCATUNNEST など)
  • ウィンドウ関数(ROW_NUMBERLAGLEADRANKNTILE など)


詳細については、変換を追加するをご覧ください。
フィルタ WHERE 句構文を使用して行を削除します。フィルタステップを追加するときに、検証ステップにすることもできます。

詳細については、行をフィルタするをご覧ください。
検証 検証ルールの条件を満たす行をエラーテーブルに送信します。データが検証ルールに合格せず、エラーテーブルが構成されていない場合、データ準備は実行中に失敗します。

詳細については、エラーテーブルを構成して検証ルールを追加するをご覧ください。
参加 2 つのソースの値を結合します。テーブルは同じロケーションに存在する必要があります。結合キー列のデータ型は同じである必要があります。データ準備は、次の結合オペレーションをサポートしています。
  • 内部結合
  • 左結合
  • 右結合
  • 完全外部結合
  • クロス結合(結合キー列が選択されていない場合は、クロス結合が使用されます)


詳細については、結合オペレーションを追加するをご覧ください。
目的地 データ準備ステップの出力先を定義します。存在しない宛先テーブルを入力すると、データ準備によって現在のスキーマ情報を使用して新しいテーブルが作成されます。

詳細については、宛先テーブルを追加または変更するをご覧ください。
Delete columns スキーマから列を削除します。この手順は、スキーマビューから行います。

詳細については、列を削除するをご覧ください。

データ準備実行のスケジュール設定

データ準備手順を実行し、準備したデータを宛先テーブルに読み込むには、1 回限りまたは定期的なデータ準備実行をスケジュールします。データ準備はデータ準備エディタからスケジュール設定し、BigQuery の [オーケストレーション] ページから管理できます。詳細については、データ準備のスケジュール設定をご覧ください。

API

BigQuery データの準備には独自の API がありません。Dataform で BigQuery データ準備を使用する方法について詳しくは、bq-datapreparation-feedback@google.com までお問い合わせください。

制限事項

データ準備には次の制限があります。

  • 特定のデータ準備の BigQuery データ準備のソース データセットと宛先データセットはすべて同じロケーションに存在する必要があります。詳細については、サポートされているロケーションをご覧ください。
  • パイプラインの編集中、データとインタラクションは処理のために米国のデータセンターに送信されます。詳細については、サポートされているロケーションをご覧ください。
  • データ準備では、自然言語 SQL クエリの生成はサポートされていません。
  • BigQuery データ準備では、データ準備のバージョンの表示、比較、復元はサポートされていません。
  • Gemini からのレスポンスは、データ準備パイプラインの設計時に指定したデータセットのサンプルに基づいています。詳細については、Google Cloud の Gemini がデータを使用する方法と、Gemini for Google Cloud Trusted Tester プログラムの利用規約をご覧ください。

場所

データ準備は、すべての BigQuery ロケーションでデータ処理をサポートしています。特定のデータ準備のコピー元とコピー先のデータセットは同じロケーションに存在する必要があります。

料金

データ準備の実行とデータプレビュー サンプルの作成では BigQuery リソースが使用されます。このリソースの料金は、BigQuery の料金に記載されている料金で課金されます。

データの準備は、BigQuery の Gemini の料金に含まれます。プレビュー期間中は、追加料金なしで BigQuery データ準備を使用できます。詳細については、BigQuery で Gemini を設定するをご覧ください。

割り当て

詳細については、Google Cloud で Gemini の割り当てをご覧ください。

次のステップ