本番環境での実行をスケジュールする

このクイックスタートでは、Dataform で本番環境実行をスケジュールするための次の手順について説明します。

始める前に

  1. Google Cloud アカウントにログインします。Google Cloud を初めて使用する場合は、アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
  2. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  3. Google Cloud プロジェクトで課金が有効になっていることを確認します

  4. BigQuery and Dataform API を有効にします。

    API を有効にする

  5. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  6. Google Cloud プロジェクトで課金が有効になっていることを確認します

  7. BigQuery and Dataform API を有効にします。

    API を有効にする

現時点では、Dataform は VPC Service Controls をサポートしていません。VPC Service Controls を使用する場合は、VPC Service Controls の境界から BigQuery リソースを除外して Dataform を使用します。

必要なロール

このチュートリアルのすべてのタスクに必要な権限を取得するには、次の IAM ロールを付与するよう管理者に依頼してください。

ロールの付与の詳細については、アクセスの管理をご覧ください。

必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。

Dataform リポジトリの作成

  1. Google Cloud コンソールの [Dataform] ページに移動します。

    Dataform に移動

  2. [リポジトリを作成] をクリックします。

  3. [リポジトリの作成] ページで、次の操作を行います。

    1. [リポジトリ ID] フィールドに「quickstart-production」と入力します。

    2. [リージョン] リストで europe-west4 を選択します。

    3. [作成] をクリックします。

  4. [完了] をクリックします。

Dataform に BigQuery へのアクセス権を付与する

BigQuery でワークフローを実行するには、Dataform サービス アカウントに次のロールが必要です。

  • Dataform が読み取りと書き込みの両方のアクセス権を必要とするプロジェクトに対する BigQuery データ編集者。 通常は、Dataform リポジトリをホストするプロジェクトが含まれます。
  • Dataform が読み取り専用アクセス権を必要とするプロジェクトに対する BigQuery データ閲覧者
  • Dataform リポジトリをホストするプロジェクトに対する BigQuery ジョブユーザー

これらのロールを付与するには、次の手順に沿って操作します。

  1. Google Cloud コンソールの [IAM] ページに移動します。

    [IAM] ページに移動

  2. [Add(追加)] をクリックします。

  3. [新しいプリンシパル] フィールドに、Dataform サービス アカウント ID を入力します。

  4. [ロールを選択] プルダウン リストで、[BigQuery ジョブユーザー] ロールを選択します。

  5. [別のロールを追加] をクリックし、[ロールを選択] プルダウン リストで [BigQuery データ編集者] ロールを選択します。

  6. [別のロールを追加] をクリックし、[ロールを選択] プルダウン リストで [BigQuery データ閲覧者] ロールを選択します。

  7. [保存] をクリックします。

リリース構成を作成する

quickstart-production リポジトリの本番環境のコンパイル結果を作成する手順は次のとおりです。

  1. Google Cloud コンソールの [Dataform] ページに移動します。

    Dataform に移動

  2. [quickstart-production] をクリックします。

  3. [リリース構成] をクリックし、[新しいリリース構成] をクリックします。

  4. [リリース構成を作成] ペインで、次の設定を構成します。

    1. [リリース ID] フィールドに「production」と入力します。

    2. [Git commitish] フィールドで、デフォルト値 main のままにします。

    3. [頻度] プルダウンで、[カスタム] を選択します。

    4. [カスタム スケジュール] フィールドに「0 16 * * *」と入力します。

    5. [タイムゾーン] プルダウンで、[グリニッジ標準時(GMT)] などの UTC+1 タイムゾーンを選択します。

    毎日午後 4 時(UTC+1)に、Dataform は quickstart-production リポジトリをコンパイルし、このリリース構成で構成されたコンパイル設定を適用して、production コンパイル結果を作成します。

  5. [作成] をクリックします。

production リリース構成は、毎日午後 4 時(UTC+1)に quickstart-production リポジトリ全体のコンパイル結果を作成します。

ワークフロー構成を作成する

production テーブルの実行をスケジュールするには、次の手順を行います。

  1. Google Cloud コンソールの [Dataform] ページに移動します。

    Dataform に移動

  2. [quickstart-production] をクリックします。

  3. [ワークフロー構成] をクリックし、[新しいワークフロー構成] をクリックします。

  4. [ワークフロー構成を作成] ペインの [構成 ID] フィールドに、「production」と入力します。

  5. [リリース構成] プルダウンで、production を選択します。

  6. [頻度] フィールドに「0 17 * * *」と入力します。

  7. [タイムゾーン] プルダウンで、[グリニッジ標準時(GMT)] などの UTC+1 タイムゾーンを選択します。

    毎日午後 5 時(UTC+1)に、Dataform は quickstart-production リポジトリの最新の production コンパイル結果を実行します。

    Dataform が対応するリリース構成で最新のコンパイル結果を確実に実行するには、コンパイル結果の作成時刻とスケジュールされた実行時刻の間に少なくとも 1 時間の間隔を設けます。

  8. [すべてのアクション] をクリックします。

    Dataform は、production コンパイル結果内のすべての SQL ワークフロー アクションを実行します。

  9. [作成] をクリックします。

production ワークフロー構成は、毎日午後 4 時(UTC+1)に production リリース構成によって作成された最新のコンパイル結果全体を実行します。

過去の production コンパイル結果を表示する

過去の production コンパイル結果を表示する手順は次のとおりです。

  1. Google Cloud コンソールの [Dataform] ページに移動します。

    Dataform に移動

  2. [quickstart-production] をクリックします。

  3. [リリース構成] をクリックします。

  4. [production] をクリックします。

過去の production ワークフローの実行を表示する

過去の production ワークフローの実行を表示する手順は次のとおりです。

  1. Google Cloud コンソールの [Dataform] ページに移動します。

    Dataform に移動

  2. [quickstart-production] をクリックします。

  3. [ワークフロー構成] をクリックします。

クリーンアップ

このページで使用したリソースについて、Google Cloud アカウントに課金されないようにするには、次の手順を行います。

BigQuery で作成したデータセットを削除する

BigQuery アセットの料金が発生しないようにするには、次の手順で dataform_production というデータセットを削除します。

  1. Google Cloud コンソールで [BigQuery] ページに移動します。

    BigQuery に移動

  2. [エクスプローラ] パネルでプロジェクトを開いて、dataform_production を選択します。

  3. [アクション] メニューをクリックして、[削除] を選択します。

  4. [データセットの削除] ダイアログで、テキスト ボックスに「delete」と入力してから [削除] をクリックします。

Dataform リリース構成を削除する

Dataform リリース構成の作成に関連する費用は発生しません。ただし、production リリース構成を削除するには、次の手順を行います。

  1. Google Cloud コンソールの [Dataform] ページに移動します。

    Dataform に移動

  2. [quickstart-production] をクリックします。

  3. [リリース構成] をクリックします。

  4. production リリース構成で、 [その他] メニューをクリックして、[削除] をクリックします。

  5. [リリース構成の削除] ポップアップで、[削除] をクリックします。

Dataform ワークフロー構成を削除する

BigQuery アセットの料金が発生しないようにするには、次の手順で Dataform production ワークフロー構成を削除します。

  1. Google Cloud コンソールの [Dataform] ページに移動します。

    Dataform に移動

  2. [quickstart-production] をクリックします。

  3. [ワークフロー構成] をクリックします。

  4. production ワークフロー構成で、 [その他] メニューをクリックして、[削除] をクリックします。

  5. [リリース構成の削除] ポップアップで、[削除] をクリックします。

Dataform リポジトリの削除

Dataform リポジトリの作成に関連する費用は発生しません。ただし、リポジトリとそのすべてのコンテンツを削除するには、次の手順を行います。

  1. Google Cloud コンソールの [Dataform] ページに移動します。

    Dataform に移動

  2. quickstart-production で、 [その他] メニューをクリックし、[削除] を選択します。

  3. [リポジトリの削除] ウィンドウで、リポジトリの名前を入力して削除を確定します。

  4. [削除] をクリックして確定します。

次のステップ