以前の環境とスケジュールを移行する

従来の Dataform は 2024 年 2 月 26 日に非推奨となり、それ以降はレガシー プロジェクトにアクセスできなくなります。このドキュメントでは、リリースとワークフローの構成で、従来の Dataform から Google Cloud の Dataform に環境とスケジュールを移行する方法について説明します。

以前の Dataform では、環境とスケジュールを environments.json ファイルで定義しています。

次のコードサンプルは、従来の Dataform の environments.json ファイル内の production 環境と staging 環境の定義と、対応するスケジュールを示しています。

// example of an environments.json file

{
  "environments": [
    {
      "name": "production",
      "configOverride": {},
      "schedules": [
        {
          "name": "daily",
          "cron": "30 14 * * *",
          "tags": [
            "daily"
          ]
        },
        {
          "name": "hourly",
          "cron": "*/5 * * * *",
          "disabled": false
        }
      ],
      "gitRef": "master"
    },
    {
      "name": "staging",
      "configOverride": {
        "schemaSuffix": "staging"
      },
      "schedules": [
        {
          "name": "daily (all)",
          "cron": "42 16 * * mon,tue,wed,thu,fri,sat,sun"
        }
      ],
      "gitRef": "master"
    }
  ]
}

Google Cloud の Dataform では、環境とスケジュールの構成が 2 つのエクスペリエンスに分けられます。

リリース構成
従来の Dataform 環境と同様に、異なる環境(stagingproduction など)向けにコンパイル設定を構成するために使用します。

リリース構成では、Git commitish とコンパイル オーバーライドを構成して、コンパイル結果の作成をカスタマイズできます。Dataform は、ワークフロー構成のスケジュールとは独立して、リリース構成からコンパイル結果を作成します。つまり、リモートの Git プロバイダが利用できない場合でも、リリース構成によるコンパイル結果のスケジュール実行は可能です。

リリース構成を作成するときに、コンパイル結果を作成する頻度を設定できます。リリース構成から手動、または自動の継続的デプロイ プロセスで、コンパイル結果を作成することもできます。

ワークフロー構成
以前の Dataform スケジュールと同等で、リリース構成からのコンパイル結果の実行をスケジュールするために使用されます。

まず、リリース構成を作成し、選択した環境(staging など)のコンパイル設定を定義する必要があります。次に、ワークフロー構成を作成し、staging コンパイル結果の実行スケジュールを定義します。

環境とスケジュールを移行する方法

以前の環境とスケジュールをリリース構成ワークフロー構成に移行するには、次の方法があります。

Dataform 内でリリースとワークフローの構成を設定する

Google Cloud の Dataform 内で、環境をリリース構成として、スケジュールをワークフロー構成として再作成します。

[Dataform] ページに移動

Dataform API を使用してリリースとワークフローの構成を設定する

Dataform API を使用して、リリース構成とワークフロー構成を設定します。

または、次の方法で以前の環境とスケジュールを移行できます。

Dataform API を介して environments.json にカスタム構成を適用する
environments.json ファイルをリポジトリに保持し、任意のツールを使用して継続的デプロイ プロセスを構成できます。継続的デプロイ プロセスでは、デフォルトのブランチにマージする際に、environment.json ファイルからリリース構成とワークフロー構成を更新します。
リリースとワークフローの構成をバイパスする
リリースとワークフローの構成をバイパスし、オープンソースの Dataform CLIDataform API、または Dataform API と Cloud Composerワークフローを併用して、リポジトリのコンパイルとワークフローの実行を行うことができます。

ワークフローのアラートを移行する

Dataform は、ワークフローの呼び出し用に Cloud Logging を提供します。これらのログには、ワークフローのモニタリングとデバッグに役立つ情報が含まれています。

  • receiveTimestamp
  • release_config_id
  • repository_id
  • resource_container
  • workflow_invocation_id
  • workflow_config_id
  • severity: INFOWARNINGERROR のいずれかを設定できます。
  • terminalState: SUCCEEDEDCANCELEDFAILED のいずれかです。
  • timestamp
  • @type

Cloud Logging を Cloud Monitoring と組み合わせて使用すると、以前のアラートに似たアラートを構成できます。

Cloud Monitoring では、次の指標とアラートを構成できます。

  • ログベースの指標で、次のように使用できます。
    • 経時的な変化を通知するアラート ポリシーを作成する。
    • 経時的な変化を表すグラフを作成する。
  • ログに特定のイベントが表示されるたびに通知する、ログベースのアラート。

詳細については、Dataform 用の Cloud Logging を表示するをご覧ください。

次のステップ