SQL ワークフローの概要

このドキュメントでは、Dataform での SQL ワークフローのアーキテクチャと実行について説明します。

Dataform を使用すると、BigQuery で実行して分析目的でデータを変換できる SQL ワークフローの開発、テスト、バージョン管理を行うことができます。SQL ワークフローは、Dataform コア、SQLX ファイル、必要に応じて JavaScript ファイル、または JavaScript を使用して開発できます。

SQL ワークフローは次のオブジェクトで構成できます。

データソースの宣言
Dataform テーブル定義と SQL オペレーションでこれらのデータソースを参照できるようにする BigQuery データソースの宣言。
テーブル
SQL ワークフロー内で宣言されたデータソースまたは他のテーブルに基づいて Dataform で作成するテーブル。Dataform は、テーブル、増分テーブル、ビュー、マテリアライズド ビューのテーブルタイプをサポートしています。
アサーション
テーブルデータの検証に使用できるデータ品質のテストクエリ。Dataform は、SQL ワークフローを更新するたびにアサーションを実行し、アサーションが失敗した場合にアラートを送信します。
カスタム SQL オペレーション
Dataform が BigQuery で変更なしで実行する SQL ステートメント。
含まれるサービス
SQL ワークフローで再利用できる変数と関数の定義を含む JavaScript ファイル。

SQL ワークフローの可視化

SQL ワークフローを有向非巡回グラフ(DAG)形式で可視化できます。DAG には、ワークスペースで定義された SQL ワークフローのすべてのオブジェクトとそれらの関係が表示されます。ズームインまたはズームアウトできます。また、ドラッグ&ドロップを使用して DAG 内を移動します。SQL ワークフローにコンパイル エラーがある場合、Dataform は DAG ではなくエラー メッセージを表示します。

SQL ワークフローの DAG を表示するには、ワークスペースで [コンパイル済みグラフ] をクリックします。

SQL ワークフローの実行

開発ワークスペースでは、SQL ワークフロー全体、一部のアクション、一部のタグの実行を手動でトリガーできます。

Dataform のリリース構成ワークフロー構成を使用して実行をスケジュールできます。まず、リリース構成を作成して、リポジトリのコンパイル結果を作成します。次に、ワークフロー構成を作成し、リリース構成を選択し、実行する SQL ワークフロー アクションを選択し、実行スケジュールを設定します。

あるいは、Cloud Composer またはWorkflows と Cloud Scheduler を使用して実行をスケジュールすることもできます。

実行中、Dataform は SQL ワークフローのオブジェクト依存関係の順に BigQuery で SQL クエリを実行します。実行後、定義済みのテーブルとビューを BigQuery のすべての分析目的に使用できます。

実行構成オプション

SQL ワークフロー オブジェクトの特定のグループを実行するには、選択したファイルに Dataform 実行タグを追加します。その後、実行を手動でトリガーするときに、選択したタグを持つファイルのみを実行できます。

デフォルトでは、Dataform は dataform.json ファイルで定義された実行設定で SQL ワークフローを実行します。これらの実行設定は、コンパイル オーバーライドでオーバーライドできます。

ワークスペース コンパイル オーバーライドを使用すると、ワークスペースを分離された実行環境に変換できます。つまり、ワークスペースで実行を手動でトリガーすると、Dataform は BigQuery の分離されたロケーションで出力を実行します。

コンパイル オーバーライドを使用して単一のコンパイル結果を作成して実行するには、Dataform API を使用してリクエストを渡します。

リリース構成を使用すると、リポジトリ全体のコンパイル オーバーライドと、適用された設定でコンパイル結果を作成する頻度を構成できます。

Dataform でコンパイルとコード ライフサイクルを構成する方法の詳細については、Dataform のコード ライフサイクルの概要をご覧ください。

次のステップ