このドキュメントでは、Dataform でワークフロー構成を作成し、SQL ワークフローの実行をスケジュールして構成する方法について説明します。ワークフロー構成を使用して Dataform SQL ワークフローをスケジュールで実行する方法について確認できます。
ワークフロー構成について
BigQuery ですべての SQL ワークフロー アクションまたは一部の SQL ワークフロー アクションの Dataform 実行をスケジュールするには、ワークフロー構成を作成します。ワークフロー構成では、コンパイル リリース構成を選択し、実行する SQL ワークフロー アクションを選択し、実行スケジュールを設定します。
その後、Dataform は、ワークフロー構成のスケジュールされた実行時に、リリース構成の最新のコンパイル結果から選択したアクションを BigQuery にデプロイします。Dataform API workflowConfigs を使用して、ワークフロー構成の実行を手動でトリガーすることもできます。
Dataform ワークフローの構成には、次の実行設定が含まれています。
- ワークフロー構成の ID
- リリース構成
サービス アカウント
ワークフロー構成に関連付けられているサービス アカウント。デフォルトの Dataform サービス アカウント、Google Cloud プロジェクトに関連付けられたサービス アカウントを選択することも、別のサービス アカウントを手動で入力することもできます。デフォルトでは、ワークフローの構成ではリポジトリと同じサービス アカウントが使用されます。
実行する SQL ワークフロー アクション:
- すべてのアクション
- アクションの選択
- タグの選択
実行スケジュールとタイムゾーン
始める前に
必要なロール
ワークフロー構成の作成に必要な権限を取得するには、リポジトリに対するDataform 管理者 (roles/dataform.admin
)IAM ロールの付与を管理者に依頼してください。
ロールの付与については、プロジェクト、フォルダ、組織へのアクセスを管理するをご覧ください。
必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。
デフォルトの Dataform サービス アカウント以外のサービス アカウントを使用するには、カスタム サービス アカウントへのアクセス権を付与します。
ワークフロー構成を作成する
Dataform ワークフロー構成を作成するには、次の操作を行います。
- リポジトリで、[リリースとスケジュール] に移動します。
- [ワークフロー構成] セクションで、[作成] をクリックします。
[ワークフロー構成を作成] ペインの [構成 ID] フィールドに、ワークフロー構成の一意の ID を入力します。
ID には数字、英字、ハイフン、アンダースコアのみを使用できます。
[リリース構成] プルダウンで、コンパイル リリース構成を選択します。
(省略可)[頻度] フィールドに、実行頻度を unix-cron 形式で入力します。
Dataform が対応するリリース構成で最新のコンパイル結果を確実に実行するには、コンパイル結果の作成時刻とスケジュールされた実行時刻の間に少なくとも 1 時間の間隔を設けます。
[サービス アカウント] プルダウンで、ワークフロー構成のサービス アカウントを選択します。
プルダウンで、デフォルトの Dataform サービス アカウントまたはアクセス可能な Google Cloud プロジェクトに関連付けられた任意のサービス アカウントを選択できます。サービス アカウントを選択しない場合、ワークフローの構成ではリポジトリのサービス アカウントが使用されます。
省略可: [タイムゾーン] プルダウンで、実行のタイムゾーンを選択します。
デフォルトのタイムゾーンは UTC です。
実行する SQL ワークフロー アクションを選択します。
- SQL ワークフロー全体を実行するには、[すべてのアクション] をクリックします。
- SQL ワークフローで選択したアクションを実行するには、[アクションの選択] をクリックして、アクションを選択します。
- 選択したタグでアクションを実行するには、[タグの選択] をクリックしてタグを選択します。
- 省略可: 選択したアクションまたはタグとそれらの依存関係を実行するには、[依存関係を含める] オプションを選択します。
- 省略可: 選択したアクションまたはタグとそれらの依存関係を実行するには、[依存者を含める] オプションを選択します。
- 省略可: すべてのテーブルをゼロから再構築するには、[フル更新で実行] オプションを選択します。
このオプションを使用しない場合、Dataform は、増分テーブルをゼロから再構築せずに更新します。
[作成] をクリックします。
たとえば、次のワークフロー構成では、CEST タイムゾーンで hourly
タグを持つアクションが 1 時間ごとに実行されます。
- 構成 ID:
production-hourly
- リリース構成:
- 頻度:
0 * * * *
- タイムゾーン:
Central European Summer Time (CEST)
- SQL ワークフロー アクションの選択: タグの選択、
hourly
タグ
ワークフロー構成を編集する
ワークフロー構成を編集するには、次の手順を行います。
- リポジトリで、[リリースとスケジュール] に移動します。
- 編集するワークフロー構成で、 [その他] メニューをクリックし、[編集] をクリックします。
- [ワークフロー構成を編集] ペインで、リリース構成の設定を編集し、[保存] をクリックします。
ワークフロー構成を削除する
ワークフロー構成を作成するには、次の手順を行います。
- リポジトリで、[リリースとスケジュール] に移動します。
- 削除するワークフロー構成で、 [その他] メニューをクリックし、[削除] をクリックします。
- [リリース構成の削除] ダイアログで、[削除] をクリックします。
次のステップ
- Dataform コンパイル リリース構成を構成する方法については、リリース構成を作成するをご覧ください。
- Dataform のコード ライフサイクルの詳細については、Dataform のコード ライフサイクルの概要をご覧ください。