以前の 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 環境と同様に、異なる環境(
staging
やproduction
など)向けにコンパイル設定を構成するために使用します。
リリース構成では、Git commitish とコンパイル オーバーライドを構成して、コンパイル結果の作成をカスタマイズできます。Dataform は、ワークフロー構成のスケジュールとは独立して、リリース構成からコンパイル結果を作成します。つまり、リモートの Git プロバイダが利用できない場合でも、リリース構成によるコンパイル結果のスケジュール実行は可能です。
リリース構成を作成するときに、コンパイル結果を作成する頻度を設定できます。リリース構成から手動、または自動の継続的デプロイ プロセスで、コンパイル結果を作成することもできます。
- ワークフロー構成
- 以前の Dataform スケジュールと同等で、リリース構成からのコンパイル結果の実行をスケジュールするために使用されます。
まず、リリース構成を作成し、選択した環境(staging
など)のコンパイル設定を定義する必要があります。次に、ワークフロー構成を作成し、staging
コンパイル結果の実行スケジュールを定義します。
環境とスケジュールを移行する方法
以前の環境とスケジュールをリリース構成とワークフロー構成に移行するには、次の方法があります。
- Dataform 内でリリースとワークフローの構成を設定する
Google Cloud の Dataform 内で、環境をリリース構成として、スケジュールをワークフロー構成として再作成します。
- Dataform API を使用してリリースとワークフローの構成を設定する
Dataform API を使用して、リリース構成とワークフロー構成を設定します。
または、次の方法で以前の環境とスケジュールを移行できます。
- Dataform API を介して
environments.json
にカスタム構成を適用する environments.json
ファイルをリポジトリに保持し、任意のツールを使用して継続的デプロイ プロセスを構成できます。継続的デプロイ プロセスでは、デフォルトのブランチにマージする際に、environment.json
ファイルからリリース構成とワークフロー構成を更新します。- リリースとワークフローの構成をバイパスする
- リリースとワークフローの構成をバイパスし、オープンソースの Dataform CLI、Dataform API、または Dataform API と Cloud Composer や ワークフローを併用して、リポジトリのコンパイルとワークフローの実行を行うことができます。
ワークフローのアラートを移行する
Dataform は、ワークフローの呼び出し用に Cloud Logging を提供します。これらのログには、ワークフローのモニタリングとデバッグに役立つ情報が含まれています。
receiveTimestamp
release_config_id
repository_id
resource_container
workflow_invocation_id
workflow_config_id
severity
:INFO
、WARNING
、ERROR
のいずれかを設定できます。terminalState
:SUCCEEDED
、CANCELED
、FAILED
のいずれかです。timestamp
@type
Cloud Logging を Cloud Monitoring と組み合わせて使用すると、以前のアラートに似たアラートを構成できます。
Cloud Monitoring では、次の指標とアラートを構成できます。
- ログベースの指標で、次のように使用できます。
- 経時的な変化を通知するアラート ポリシーを作成する。
- 経時的な変化を表すグラフを作成する。
- ログに特定のイベントが表示されるたびに通知する、ログベースのアラート。
詳細については、Dataform 用の Cloud Logging を表示するをご覧ください。
次のステップ
- リリース構成を作成する方法については、リリース構成を作成するをご覧ください。
- ワークフロー構成の作成方法については、ワークフロー構成で実行をスケジュールするをご覧ください。
- Dataform のコード ライフサイクルの詳細については、Dataform のコード ライフサイクルの概要をご覧ください。
- 従来の Dataform から Google Cloud の Dataform に移行する方法については、従来の Dataform から移行するをご覧ください。