このドキュメントでは、BigQuery に対してクエリを実行する前に、Dataform ワークスペースで SQL クエリの出力をプレビューする方法について説明します。
Dataform でのクエリのプレビューについて
Dataform コアを使用して SQLX ファイルまたは JavaScript ファイルでクエリを開発すると、Dataform はクエリをリアルタイムで SQL にコンパイルします。コンパイルされた SQL クエリの出力を BigQuery で実行する前にテストするには、Dataform ワークスペースでクエリをプレビューします。
クエリをプレビューすると、Dataform は BigQuery でジョブを実行して、コンパイルされたクエリを一時的な宛先テーブルで実行し、ワークスペースにクエリ結果を表示します。実行をトリガーしてテーブルを BigQuery に公開する前に、クエリの出力を確認できます。プレビューされたクエリを含む一時テーブルは、最大 24 時間で自動的に削除されます。BigQuery ジョブの詳細については、 ジョブを 管理するをご覧ください。
Dataform でクエリのプレビューを実行すると、BigQuery で課金が発生します。 BigQuery の料金の詳細については、 BigQuery の料金をご覧ください。
クエリのプレビュー中、Dataform は Google アカウントのユーザー認証情報を使用して BigQuery でジョブを実行します。ワークフローの実行中、 厳格な act-as モード では、Dataform はカスタム サービス アカウントまたは Google アカウント のユーザー認証情報を使用して、BigQuery でアセットを作成または更新する必要があります。
Dataform は、現在のブラウザ セッション中にプレビューされたすべてのクエリの結果をワークスペースの [クエリ結果] パネルに表示します。[クエリ結果] パネルには、現在のブラウザ セッション中にプレビューされた各クエリに関する次の情報が表示されます。
- ジョブ情報
- BigQuery ジョブ ID
- プレビューを実行しているユーザー
- ジョブが実行されるロケーション( ワークフロー設定ファイルから取得)
- BigQuery ジョブの作成時刻、開始時刻、終了時刻
- BigQuery ジョブの期間
- 処理されたバイト数
- BigQuery で課金されたバイト数
- ジョブの優先度
- クエリでのレガシー SQL の使用
- クエリの一時的な宛先テーブル
- クエリの結果
- クエリ出力の JSON 表現
また、[クエリ結果] パネルで、プレビューされた各クエリのソースファイルに移動したり、BigQuery Studio に移動してプレビュー ジョブを表示したりできます。
始める前に
コンソールで、[Dataform] ページに移動します。 Google Cloud
リポジトリを作成または選択します。
開発ワークスペースを作成または選択します。
SQL クエリを作成します( テーブルの作成など)。
必要なロール
クエリをプレビューするために必要な権限を取得するには、次の IAM ロールを付与するよう管理者に依頼してください。
- Dataform 編集者 (
roles/dataform.editor)ワークスペースに対する - BigQuery ジョブユーザー (
roles/bigquery.jobUser) プロジェクトに対する
ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。
クエリをプレビューする
実行前に Dataform でクエリ結果を確認するには、ワークスペースでクエリのプレビューを実行します。編集するファイルに複数のクエリが含まれている場合は、プレビューするクエリを選択します。一度に 1 つのクエリをプレビューできます。
アサーションを含むテーブルの場合、プレビューの実行は少し異なります。詳細については、 アサーションを含むテーブルをプレビューするをご覧ください。
SQL クエリをプレビューして Dataform ワークスペースでクエリ結果を表示する手順は次のとおりです。
- [ファイル] ペインで、
definitions/を展開します。 - SQLX ファイルまたは JavaScript ファイルを選択します。
[実行] をクリックします。
- ファイルに複数のクエリが含まれている場合は、メニューでプレビューするクエリを選択します。
[クエリ結果] パネルでプレビューの結果を確認します。
- ジョブの詳細を確認するには、[ジョブ情報] タブを選択します。
- クエリ結果を確認するには、[結果] タブを選択します。
- クエリの JSON 出力を表示するには、[JSON] タブを選択します。
- SQL ワークスペースでプレビュー ジョブを表示するには、 [**その他**] メニュー > [SQL ワークスペースでジョブを表示] をクリックします。
アサーションを含むテーブルをプレビューする
アサーションを含む SQLX テーブル定義ファイルでは、テーブル作成クエリと定義済みのアサーション クエリをプレビューできます。
Dataform は、テーブル定義クエリをデフォルトのクエリとして扱います。テーブル作成クエリをプレビューするには、ワークスペースで [実行] をクリックします。アサーション クエリをプレビューするには、[実行] ボタンの横にあるメニューで選択します。一度に 1 つのクエリをプレビューできます。
Dataform ワークスペースでアサーションを含むテーブル定義ファイルのクエリをプレビューする手順は次のとおりです。
- [ファイル] ペインで、
definitions/を展開します。 - アサーションを含むテーブルの定義ファイルを選択します。
- プレビューを実行します。
- テーブル作成クエリをプレビューするには、[実行] をクリックします。
- アサーション クエリをプレビューするには、 [実行] の横にあるプルダウン アイコンをクリックし、プレビューするクエリを選択します。
- [クエリ結果] パネルでプレビューの結果を確認します。
- ジョブの詳細を確認するには、[ジョブ情報] タブを選択します。
- クエリ結果を確認するには、[結果] タブを選択します。
- クエリの JSON 出力を表示するには、[JSON] タブを選択します。
- SQL ワークスペースでプレビュー ジョブを表示するには、 [**その他**] メニュー > [**SQL ワークスペースでジョブを表示**] をクリックします。
次のステップ
- BigQuery の料金の詳細については、 BigQuery の料金をご覧ください。
- Dataform の料金の詳細については、 料金をご覧ください。
- Dataform のワークスペースの詳細については、 開発ワークスペースを作成するをご覧ください。
- アサーションを使用してテーブルクエリをテストする方法については、 アサーションを使用してテーブルをテストするをご覧ください。