自動トリガーノードは、スケジューリングシステムにコミットされた後、スケジューリング構成に基づいて定期的にスケジューリングされるノードです。 [オペレーションセンター] の [サイクルタスク] ページの自動トリガーノードのリストで、ワークスペース内の自動トリガーノードを表示し、目的の自動トリガーノードで O&M 操作を実行できます。たとえば、自動トリガーノードを手動で実行したり、スケジューリングシステムを有効にして自動的に実行したり、自動トリガーノードの詳細を表示したり、自動トリガーノードを一時停止またはデプロイ解除したりできます。このトピックでは、自動トリガーノードで実行できる O&M 操作について説明します。
使用上の注意
自動トリガーノードは、本番環境のオペレーションセンターでのみ、インスタンスを生成するように自動的にスケジュールできます。開発環境のオペレーションセンターでは、自動トリガーノードを自動的にスケジュールしてインスタンスを生成することはできません。
本番環境でノードコード、スケジューリング構成、リソース、または関数に追加、変更、デプロイ解除などの操作を実行した後、構成を有効にするには、オブジェクトをコミットしてデプロイする必要があります。
自動トリガーノードを変更した後、ノードをデプロイする必要があります。ノードがデプロイされると、変更は本番環境で有効になります。ノードのデプロイに失敗する、デプロイプロセスがブロックされる、デプロイされたノードのバージョンが要件を満たしていないなどの問題が発生する場合があります。このような場合は、[オペレーションセンター] の [サイクルタスク] ページに移動して問題のトラブルシューティングを行うことをお勧めします。詳細については、「自動トリガータスクの表示と管理」をご参照ください。
概要
次の表に、自動トリガーノードで実行できる O&M 操作を示します。
O&M 操作 | 説明 |
サイクルタスクページの自動トリガーノードのリストまたはノードの有向非循環グラフ(DAG)で、自動トリガーノードの詳細を表示し、ノードで操作を実行できます。 | |
| |
| |
自動トリガーノードの操作ログ、バージョン、および操作履歴を表示できます。 |
自動トリガーノードを表示する
自動トリガーノードのリストでは、本番環境のスケジューリングシステムにコミットおよびデプロイされた自動トリガーノードを表示できます。 コード、スケジューリングパラメーター構成、スケジューリング依存関係、および自動トリガーノードの系列がビジネス要件を満たしているかどうかを確認できます。 自動トリガーノードのリストまたはノードの DAG で、自動トリガーノードの詳細を表示し、ノードに関連する操作を実行できます。 詳細については、「自動トリガー タスクの表示と管理」をご参照ください。
本番環境にデプロイされた自動トリガーノードのみが、オペレーションセンターのサイクルタスクページの自動トリガーノードのリストに表示されます。
次のタイプのノードは自動的にスケジュールされません。他のノードに依存しないノード、および他のノードの先祖ノードとして使用され、子孫ノードに依存するノード。
自動トリガーノードを実行する
DataWorks でノードが実行されるモードを理解し、ノードの実行状況に基づいて効率的な方法で O&M 診断を実行できます。
実行モード
DataWorks は、毎晩、自動トリガーノードに対して翌日実行するようにスケジュールされている自動トリガーノードインスタンスを生成します。自動トリガーノードの [アクション] 列の [データをバックフィル] または [テスト] をクリックして、自動トリガーノードのデータバックフィルインスタンスまたはテストインスタンスを生成できます。
インスタンスタイプ | シナリオ | 自動トリガーノードとの関係 (インスタンスの生成方法) | インスタンストリガーメソッド (インスタンスの実行をトリガーする方法) |
定期的な ETL(抽出、変換、書き出し)操作が必要です。 | 毎晩、DataWorks は、特定の時点における自動トリガーノードのスナップショット情報に基づいて、翌日実行するようにスケジュールされた自動トリガーノードインスタンスを生成します。 説明 開発環境では、自動的にトリガーされるノードは、オペレーションセンターでインスタンスを生成するように自動的にスケジュールすることはできません。 | DataWorks は、実行のために自動トリガーノードインスタンスをトリガーします。 | |
現在の自動トリガーノードとその子孫ノードの過去の期間または将来の期間のデータをバックフィルする場合。これは、その期間のデータに対して ETL 操作を実行する必要があることを示しています。 | 現在の自動トリガーノードのデータをバックフィルして、ノードのデータバックフィルインスタンスを生成する必要があります。 | データをバックフィルすると、データバックフィルインスタンスが生成され、実行がトリガーされます。 | |
現在の自動トリガーノードをテストして、ノードが期待どおりに実行されるかどうかを確認します。 説明 自動トリガーノードのコードは、テスト中に実行されます。 | 現在の自動トリガーノードをテストして、ノードのテストインスタンスを生成する必要があります。 | テストを実行すると、テストインスタンスが生成され、実行がトリガーされます。 |
自動トリガーノードを実行するための条件
自動トリガーノードは、次の条件が満たされた場合にのみ実行するようにスケジュールできます。自動トリガーノードの先祖ノードが正常に実行されている、自動トリガーノードのスケジュール時間が到来している、スケジュールリソースが十分である、自動トリガーノードがフリーズされていない。詳細については、「自動トリガーノードが正常に実行されるための前提条件」をご参照ください。
ノードの実行に関連する問題のトラブルシューティング
問題の説明と原因:自動トリガーノードのスケジュール時間が到来しましたが、ノードは実行されていません。この問題の考えられる原因は、自動トリガーノードの先祖ノードが自動トリガーノードのスケジュール時間が到来するまでまだ実行されている、自動トリガーノードを実行するために使用できる十分なリソースがない、自動トリガーノードがフリーズされているなどです。
解決策:自動トリガーノードが実行に失敗した場合、自動トリガーノードの DAG で提供される 上流分析 機能を使用して、自動トリガーノードの実行をブロックしている先祖ノードをすばやく特定できます。次に、インテリジェント診断 機能を使用して、先祖ノードの障害原因または関連する問題を診断できます。インテリジェント診断機能は、自動トリガーノードとその先祖ノード間の依存関係が複雑な場合に、問題をすばやくトラブルシューティングするためにも使用できます。これにより、O&M 効率が向上します。詳細については、「スケジュール時間が到来した後、自動トリガーインスタンスが実行されないのはなぜですか?」、「リソースを待機しているノード」、および「ノードのフリーズとフリーズ解除」をご参照ください。
緊急 O&M 操作
自動トリガーノードが複数の先祖ノードに依存し、先祖ノードの 1 つが実行されていない場合、 を選択して、サイクルインスタンスページで自動トリガーノードに対して生成されたインスタンスを検索し、インスタンスの DAG を開き、DAG 内のインスタンスを右クリックします。「親ノードを持つ依存関係の削除」ダイアログボックスで、実行されていない先祖ノードの名前を指定して、自動トリガーノードと先祖ノード間の依存関係を削除できます。
説明この操作が、インスタンスが生成されたノードのコードとインスタンスのリネージに基づいてデータ出力に影響を与えるかどうかを確認する必要があります。
自動トリガーノードの複数の子孫ノードでデータ品質の問題が発生した場合は、サイクルインスタンスページで自動トリガーノード用に生成されたインスタンスを見つけ、インスタンスの DAG を開き、DAG 内のインスタンスを右クリックし、 を選択するか、[緊急操作] > [子孫ノードを強制的に再実行] を選択して、自動トリガーノードとその子孫ノードを強制的に再実行します。詳細については、「付録:自動トリガーインスタンスの子孫インスタンスを強制的に再実行する」をご参照ください。
サーバーの電源異常停止やプライマリ/セカンダリ スイッチオーバーなどの極端なケースでは、DataWorks が MaxCompute の関連タスクプロセスを完全に終了できない場合があります。この場合、目的の MaxCompute 計算リソースに対応する MaxCompute プロジェクトに移動して、タスクを終了 します。
自動トリガーノードを管理する
自動トリガーノードをデプロイする
オペレーションセンターのサイクルタスクページで自動トリガーノードを表示するには、本番環境のスケジューリングシステムにノードをデプロイする必要があります。詳細については、「ノードをデプロイする(旧バージョンの DataStudio)」または「ノードまたはワークフローのデプロイ(新バージョンの Data Studio)」をご参照ください。
自動トリガーノードをデプロイ解除する
自動トリガーノードまたはワークフローが不要になった場合は、ノードまたはワークフロー内のすべてのノードをデプロイ解除できます。自動トリガーノードをデプロイ解除すると、サイクルタスクページでノードを見つけることができなくなります。詳細については、「ノードをデプロイ解除する(旧バージョンの DataStudio)」または「ノードをデプロイ解除する(新バージョンの Data Studio)」をご参照ください。
自動トリガーノードをフリーズする
ワークスペースのルートノードである projectname_root ノードで操作を実行しないでください。ワークスペース内の自動トリガーノードのすべてのインスタンスはこのノードに依存しています。このノードがフリーズされていると、自動トリガーノードのインスタンスを実行できません。
操作 | シナリオ | 説明 |
自動トリガーノードをフリーズする | 自動トリガーノードとその子孫ノードを特定の期間実行する必要がない場合は、自動トリガーノードをフリーズできます。 |
|
インスタンスをフリーズする | 自動トリガーノード用に生成されたインスタンスを実行する必要がない場合は、インスタンスをフリーズできます。 | フリーズ操作は、現在のインスタンスにのみ有効です。現在のインスタンスと同じ日に生成された他のインスタンス、および現在のインスタンスより後に生成されたインスタンスは影響を受けません。 |
自動トリガーノードの [再発] を [ドライラン] に設定する | 自動トリガーノードを特定の期間実行する必要がないが、ノードの子孫ノードの実行をブロックしたくない場合は、自動トリガーノードの [再発] パラメータを [ドライラン] に設定できます。 | ドライラン状態の自動トリガーノードは、ドライランインスタンスを生成します。システムは、ドライランインスタンスを実行してデータを生成したり、ドライランインスタンスの実行ログを生成したり、ドライランインスタンスの実行時間を表示したりしません。 説明 DataStudio ページで自動トリガーノードの Recurrence パラメーターを Skip Execution に設定する操作は、オペレーションセンターで自動トリガーノードをフリーズする操作と同じ効果があります。 DataStudio ページの自動トリガーノードへの変更は、開発環境でのみ有効になります。変更を本番環境で有効にするには、自動トリガーノードを本番環境にデプロイする必要があります。詳細については、「ノードのデプロイ (旧バージョンの DataStudio)」または「ノードまたはワークフローのデプロイ (新バージョンの DataStudio)」をご参照ください。 |
自動トリガーノードまたは自動トリガーノードインスタンスのフリーズまたはフリーズ解除の影響の詳細については、「ノードのフリーズとフリーズ解除」をご参照ください。
ノードの優先順位を管理する
ベースライン管理機能を使用して、ベースライン内の自動トリガーノードの優先順位を調整できます。スケジューリングリソースは、優先順位の高い自動トリガーノードに優先的に割り当てられます。詳細については、「ベースラインを管理する」をご参照ください。
自動トリガーノードのモニタリングとアラートの設定
監視対象の自動トリガーノードを見つけ、ノードのカスタムアラートルールとデータ品質監視ルールを設定できます。
自動トリガーノードのステータスを監視するために、カスタムアラートルールを設定できます。詳細については、「カスタムアラート ルールの管理」をご参照ください。
自動トリガーノードのデータ品質監視ルールを設定して、自動トリガーノードインスタンス、データバックフィルインスタンス、またはノード用に生成されたテストインスタンスの実行時に生成されるテーブルデータを監視できます。詳細については、「概要」をご参照ください。
自動トリガーノードを実行するために使用されるリソースグループを監視するために、ノード用に生成され、リソースグループ内のリソースを待機しているインスタンスの数、またはリソースグループのリソース使用量に基づいて、カスタムアラートルールを設定できます。詳細については、「カスタムアラート ルールの管理」をご参照ください。
自動トリガーノードの実行に使用するリソースグループを変更する
DataWorks では、自動的にトリガーされるノードを実行するために使用される、スケジューリング用のリソースグループまたは Data Integration 用のリソースグループを変更できます。詳細については、「一般的なリファレンス: タスクで使用されるリソースグループの変更」をご参照ください。
自動トリガーノードのスケジューリングプロパティを再定義する場合、DataStudio ページに移動し、目的の自動トリガーノードを見つけ、自動トリガーノードの構成タブでスケジューリングプロパティの構成を変更できます。詳細については、「基本プロパティを構成する」をご参照ください。また、バッチ操作タブに移動して、一度に複数の自動トリガーノードに対して操作を実行することもできます。詳細については、「バッチ操作を実行する」をご参照ください。
ノードのオーナーを変更する
ノードのオーナーを変更するには、まずRAM ユーザーによるノードオーナーの変更を有効にする必要があります。
RAM ユーザーによるノードオーナーの変更が有効になると、ワークスペース管理者は次の操作を実行できます。
DataStudio ページで、ノードのオーナー、または複数のノードのオーナーを一度に変更します。
ノードのオーナーを変更する: ワークスペース管理者は、DataStudio ページの[プロパティ] タブの[一般] セクションで、ノードのオーナーを変更できます。
複数のノードのオーナーを一度に変更する: ワークスペース管理者は、DataStudio ページで複数のノードのオーナーを一度に変更できます。詳細については、「バッチ操作を実行する」をご参照ください。
開発環境でノードのオーナーを変更した後、変更を有効にするには、ノードを本番環境にデプロイする必要があります。
本番環境で、ノードのオーナー、または複数のノードのオーナーを一度に変更します。
ノードのオーナーを変更する: ノードを見つけ、[アクション] 列で を選択します。
複数のノードのオーナーを一度に変更する: オーナーを変更するノードを選択し、下部にある [オーナーの変更] をクリックします。
本番環境でノードのオーナーを変更すると、開発環境のノードのオーナーも変更されます。
自動トリガーノードの操作レコードを表示する
エントリ ポイント | 説明 |
[操作ログ] タブ(自動トリガーノードまたは自動トリガーノードインスタンスの DAG ページ) | [操作ログ] タブで、自動トリガーノードまたは自動トリガーノードインスタンスの操作レコードを表示できます。 |
[バージョン] タブ(DataStudio ページ) | 自動トリガーノードに対して実行およびデプロイされた操作に関する詳細が記録されていない場合は、自動トリガーノードの構成タブに移動し、ノードの既存バージョンと本番環境のノードのバージョンを比較して、バージョンの変更に関する詳細を取得できます。詳細については、「ノードのデプロイ(旧バージョンの DataStudio)」または「ノードまたはワークフローのデプロイ(新バージョンの DataStudio)」をご参照ください。 |
[操作履歴] ページ(オペレーションセンター) | オペレーションセンターの 操作履歴 ページに移動して、自動トリガーノード、自動トリガーノードインスタンス、またはベースラインの操作レコードを表示できます。詳細については、「オペレーションセンターで操作レコードを表示する」をご参照ください。 |
よくある質問
詳細については、「自動起動ノードに関する FAQ」をご参照ください。