ワークフローの概要

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

Dataform を使用すると、BigQuery で実行して分析用にデータを変換できるワークフローを開発、テスト、バージョン管理できます。Dataform ワークフローは、BigQuery パイプライン、データ準備、ノートブック、保存されたクエリを強化します。

ワークフローは、SQLX ファイルと必要に応じて JavaScript ファイルを使用して Dataform core で開発するか、JavaScript で開発できます。

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

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

Data Engineering Agent を使用した開発

Data Engineering エージェントは、自然言語プロンプトからコードと構成を生成することで、SQL ワークフローの構築と保守を支援します。エージェントは、SQL ロジックだけでなく、フィールドの説明、テーブルの概要、システムや型情報などの一般的なアスペクトなど、Knowledge Catalog のメタデータを使用してテーブル構成を事前に設定します。これにより、データアセットは作成された時点から検出可能になります。

詳細については、Data Engineering エージェントを使用してデータ パイプラインを構築、変更するをご覧ください。

ワークフローの可視化

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

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

ワークフローの実行

ワークフローを実行するには、カスタム サービス アカウントを Dataform リポジトリに関連付ける必要があります。他のすべてのリポジトリ オペレーションは、デフォルトの Dataform サービス エージェントによって実行されます。

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

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

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

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

実行構成オプション

ワークフロー アクションの特定のグループを実行するには、選択したファイルに Dataform 実行タグを追加します。その後、実行を手動でトリガーするときに、選択したタグを含むファイルのみを実行できます。

デフォルトでは、Dataform は workflow_settings.yaml ファイルで定義された実行設定を使用してワークフローを実行します。

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

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

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

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

次のステップ