オペレーションセンターの有向非巡回グラフ (DAG) は、ノードの上流および下流の依存関係を可視化します。また、ノード集約、アップストリーム分析、ダウンストリーム分析などの機能を提供し、運用効率を向上させます。このトピックでは、DAG ビューの機能について説明します。
制限事項
DAG ビューのノード集約、アップストリーム分析、ダウンストリーム分析機能は、DataWorks Professional Edition 以上でのみ利用できます。エディションのアップグレード方法の詳細については、「エディションと課金」をご参照ください。
DAG 機能
ノードの横にある Dagダイアグラム をクリックすると、その DAG ビューが開きます。DAG インターフェイスには、ノードグラフを表示する中央のキャンバス、ノードを選択するための左側のノードリスト、および上部にノード集約、アップストリーム分析、ダウンストリーム分析などの機能のコントロールがあります。DAG ビューでは、以下の操作を実行できます。このトピックでは、自動トリガーインスタンスを例に説明します。
-
ノード集約
自動トリガーインスタンスに多数のノードまたは依存関係レベルがある場合、ノードステータス、ワークスペース、所有者、優先度などのディメンションでノードを集約し、特定のディメンションのノード数を表示できます。これにより、ノードの分布を把握し、実行をより効果的に管理できます。以下の例は、ノードが 集約なし の場合と、[優先度で集約] された場合の表示を示しています。
説明ステータスでノードを集約できるのは、インスタンスの DAG のみです。インスタンスは、自動トリガーインスタンス、データバックフィルインスタンス、またはテストインスタンスのいずれかです。
-
ノードが集約されていない場合、各ノードは DAG に個別に表示されます。各ノードには、[仮想ノード]、[ODPS SQL]、[バッチ同期] などの名前とタイプが表示されます。ノード間の線は依存関係を示します。下部のメッセージは、現在のビューに 8 つの依存関係レベルにわたる 10 個のノードが含まれていることを示しています。
-
ノードが優先度で集約されると、表示は次のようになります。現在のノードに、優先度が 1 の 6 つの子ノードがあることがすぐにわかります。集約された DAG は依存関係パスを示し、上部の [fanyi_test_root] (仮想ノード) から始まり、[User Behavior Analysis Case Description] (仮想ノード)、[table_ddl_ods_raw_log_d] (ODPS SQL)、それぞれ 2 つのノードを含む 2 つの集約グループ、次に [dws_user_info_all_di] (ODPS SQL)、[ads_user_info_1d] (ODPS SQL)、最後に [User Behavior Analysis Result Query] (ODPS SQL) へと続きます。ノード間の矢印はスケジュール依存関係を示します。左側のパネルにはすべてのタスク名が一覧表示され、チェックボックスを使用してノードを選択できます。
-
-
アップストリーム分析
ノードが長時間保留されている場合、アップストリーム分析を実行できます。これにより、ブロッキングしている上流ノードが明らかになるため、実行時エラーを迅速に特定して解決し、実行効率を向上させることができます。
説明-
アップストリーム分析機能を使用できるのは、インスタンスの DAG のみです。インスタンスは、自動トリガーインスタンス、データバックフィルインスタンス、またはテストインスタンスのいずれかです。
-
アップストリーム分析 を実行できるのは、実行中でないノードのみです。最大 6 レベルが表示されます。さらに多くのレベルを表示するには、左上隅の 分析を続ける をクリックします。
-
アップストリーム分析により、現在のノードが依存しているが正常に実行されていない祖先ノードをすばやく見つけることができます。これらのノードは、実行中、失敗、保留中 (時間)、保留中 (リソース)、またはフリーズ状態である可能性があります。これらの状態の祖先ノードは、下流の実行をブロックします。
例のノードが長時間実行されていない場合、ノードを選択して左上隅の アップストリーム分析 をクリックできます。分析結果は、ブロッキングしている上流ノードが
old_work_rootノードであることを示しています。この結果により、ブロッキングしているノードを迅速に特定し、関連するエラーを処理できます。説明次のステップ:
-
キーインスタンスを特定した後、集約ディメンションでフィルタリングして、現在のノードのデータ出力に影響を与えるキーインスタンスのワークスペースまたは所有者を表示できます。これにより、運用効率が向上します。
-
ブロッキングしているインスタンスを特定した後、そのインスタンスを右クリックして 診断を実行する を選択し、正常に実行されなかった理由を迅速に分析することもできます。詳細については、「インテリジェント診断」をご参照ください。
アップストリーム分析結果では、[old_work_root] は仮想ノードであり、その下流の依存ノードは ODPS SQL タイプの [sd] ノードです。
-
-
ダウンストリーム分析
デフォルトでは、DAG ビューには 3 つのレベルが表示されます。現在のノード、その直接の祖先ノード (1 レベル上)、および直接の子孫ノード (1 レベル下) です。自動トリガーインスタンスに多数のノードまたはレベルがある場合、影響の全範囲を確認することが困難になる可能性があります。ダウンストリーム分析機能を使用すると、ノードステータス、ワークスペース、所有者、優先度などの基準でフィルタリングできます。これにより、特定のディメンションの異なるレベルのノード数またはすべてのレベルにわたるノードの総数をカウントできます。
説明-
集約された状態でのマージビューまたは階層ビュー:ダウンストリーム分析をクリックすると、デフォルトでノードは所有者で集約され、すべてのレベルにわたるそのディメンションのノードの総数が計算されます。
-
集約なしのグループ化ビュー:下流ノードが 10 を超える場合、デフォルトでグループ化されて表示されます。このビューにより、ノードのビジネスへの影響をより直感的に理解できます。
-
グループ化解除ビュー:集約されていないビューでは、グループ化解除をクリックしてグループ化されたノードを展開できます。これにより、すべてのノードの上流および下流の関係を確認できます。
-
ダウンストリーム分析 の レイヤード ビューには、最大 6 レベルが表示されます。さらに多くのレベルを表示するには、左上隅の 分析を続ける をクリックします。
以下の例は、[tag] ノードのダウンストリーム分析の結果を示しています。
-
マージビュー:現在の集約ディメンションに基づいて、分析された下流ノードをマージします。集約されていない状態では、下流ノードはグループ化されて表示されます。この例では、合併 方法が使用され、ノードは [ワークスペースで集約] されています。すべての下流ノードは単一のレイヤーにマージされ、異なるワークスペースに属するノードの数が表示されます。DAG ビューで [マージ] ボタンをクリックすると、tag ノードのダウンストリーム分析結果がマージモードで表示されます。7 つの下流ノードが集約グループに表示され、各グループには異なる数の子孫ノードが含まれています。下部のステータスバーには、現在 42 個のノードと 5 つのレベルが表示されていることが示されています。
-
階層ビュー:現在の集約ディメンションに基づいて、分析された下流ノードを依存関係レベルごとに表示します。この例では、レイヤード 方法が使用され、ノードは [ワークスペースで集約] され、異なるレベルの異なるワークスペースのノード数が表示されます。[DAG] ビューを選択して [階層] ボタンをクリックすると、下流ノードは上から下にレベルごとに配置されます。各レベルには含まれるノード数が表示され、ページの下部には表示されているノードとレベルの総数が表示されます (例:「42 個のノードと 5 つのレベルが表示されています」)。
-
-
DAG 表示スタイル
DAG ビューの右上隅にある機能アイコンをクリックして、表示スタイルを調整できます。たとえば、フルスクリーン または 適応スクリーン を使用できます。
以下の例は、グループの分割ビューとグループビューにおける、あるノードの下流ノードのDAGを示しています。
-
グループの分割 DAG:このビューは、すべてのノードの上流および下流の関係を明確に理解するのに役立ちます。グループ化解除モードでは、各下流ノードは依存関係レベルごとに配置された個別のカードとして表示され、合計 15 個のノードと 2 つのレベルが表示されます。右側のツールバーの [スナップショット] アイコンをクリックして、現在の DAG を画像として保存できます。
-
グループ DAG:このビューでは、下流ノードが1行あたり5つずつ整然と表示されるため、下流ノードの総数をすばやく確認できます。
-
[グループの分割] DAG: This view helps you clearly understand the upstream and downstream relationships of all nodes. In ungrouped mode, each downstream node is displayed as an individual card arranged by dependency level, showing a total of 15 nodes and 2 levels. You can click the Snapshot icon in the right-side toolbar to save the current DAG as an image.
-
[グループ] DAG: This view displays downstream nodes in an orderly manner, with five nodes per row, making it easy to quickly see the total number of downstream nodes.
-
-
[グループの分割] DAG: This view helps you clearly understand the upstream and downstream relationships of all nodes. In ungrouped mode, each downstream node is displayed as an individual card arranged by dependency level, showing a total of 15 nodes and 2 levels. You can click the Snapshot icon in the right-side toolbar to save the current DAG as an image.
-
[グループ] DAG: This view displays downstream nodes in an orderly manner, with five nodes per row, making it easy to quickly see the total number of downstream nodes.
DAG は、ノード間の上流および下流の依存関係を示します。実線は同一サイクル依存関係を示し、破線はクロスサイクル依存関係を示します。また、ノードを右クリックして操作を実行することもできます。
|
操作 |
説明 |
|
[祖先ノードを表示 / 子孫ノードを表示] |
オペレーションセンターは、3 つ以上のノードを持つワークフローを自動的に折りたたみます。このオプションで、すべての祖先および子孫レベルを展開します。 |
|
[実行ログの表示] |
実行中、成功、または失敗状態の現在のインスタンスの実行時ログを表示します。 説明
|
|
診断を実行する |
DataWorks オペレーションセンターは、ノード実行に関するエンドツーエンドの情報を取得し、問題を迅速に特定するのに役立つ実行時診断機能を提供します。詳細については、「インテリジェント診断」をご参照ください。 |
|
[コードを表示する] |
現在のインスタンスのコードを表示します。 |
|
[編集ノード] |
DataStudio でノードを開いて編集します。 |
|
[系統を見る] |
現在のインスタンスのデータリネージを表示します。 |
|
[詳細を見る] |
クリックすると、Property、コンテキスト、Runtime Log、操作ログ、コード など、現在のノードに関する情報を表示できます。 |
|
[操作の終了] |
保留中または実行中状態のインスタンスのみを停止できます。この操作後、インスタンスの状態は失敗に変わります。 |
|
[再実行] |
ノードを再実行します。再実行が成功すると、その下流ノードがトリガーされます。これは、失敗した実行または実行されなかった実行によく使用されます。 説明
動作していない、成功、または Failed 状態のノードのみを再実行できます。 |
|
[ダウンストリームで再実行] |
ノードとその下流ノードを再実行します。再実行するノードを選択する必要があります。選択したノードが正常に実行されると、まだ実行されていない下流ノードのスケジューリングをトリガーできます。この操作は、データパッチによく使用されます。 説明
動作していない、完了、Failed 状態のノードのみを選択できます。他の状態のノードを選択すると、ページに「[選択したノードには、実行条件を満たさないノードが含まれています]」というメッセージが表示され、実行の送信が無効になります。 |
|
[成功] |
失敗したインスタンスの状態を成功に変更し、その下流ノードをトリガーします。これは通常、障害からの回復に使用されます。 説明
Failed 状態のノードのみ、その状態を成功に設定できます。ワークフローの状態を成功に設定することはできません。 |
|
[走り続けた] |
ノードの実行が失敗した場合、再開できます。この機能は、MaxCompute ノードでのみサポートされています。 説明
2021 年 1 月より前に専用スケジューリングリソースグループを購入し、アップグレードが必要な場合は、まず「申請リンク」をクリックして「Alibaba Cloud Big Data & AI Platform」チャットグループに参加してください。次に、次の QR コードをスキャンして、販売前および販売後サポートのための DataWorks 製品 DingTalk グループに参加してください。インテリジェントロボットにメンション (@) してサポートを依頼するか、サポート時間中に担当スタッフに直接お問い合わせください。 |
|
[緊急操作] |
緊急時の現在のインスタンスに対する操作。緊急操作は、ノードの現在の実行にのみ有効です。 [削除依存性]:現在の実行でノードの依存関係を削除します。これは、必要な上流ノードが失敗した場合に役立ちます。 |
|
[サスペンション (フリーズ)] |
自動トリガーインスタンスをフリーズすると、その現在の実行にのみ適用されます。フリーズされた自動トリガーインスタンスは自動的にスケジュールされず、データを処理しません。また、その下流ノードが自動的にスケジュールされることもブロックします。 シナリオ:ノードを 1 時間ごとに実行するようにスケジュールすると、その日の 24 個のインスタンスが生成されます。これらの 1 時間ごとのインスタンスの 1 つを実行する必要がない場合、そのインスタンスをフリーズすることを選択できます。1 つの 1 時間ごとのインスタンスをフリーズしても、他のインスタンスの実行には影響しません。フリーズ操作が完了すると、ノードの [操作ログ] タブで、操作時刻、オペレーター、詳細を含む対応する [インスタンススケジューリングのフリーズ] レコードを表示できます。 |
|
[復元 (解凍)] |
フリーズ状態のインスタンスをフリーズ解除します。
説明
フリーズ解除操作は、現在のインスタンスにのみ影響します。ノードの定期タスクがフリーズされている場合、後続のインスタンスはフリーズ状態で作成されます。 |
インスタンスをクリックすると、ページの右下隅にインスタンス詳細ペインが表示されます。ペインの 詳細を展開 をクリックして、単一インスタンスの詳細を表示します。以下の例では、自動トリガーインスタンスを例にしています。
|
タブ |
説明 |
|
[Property] |
このタブでは、本番環境のタスクのスケジューリングプロパティを表示できます。パラメータの詳細については、「スケジューリングプロパティの設定」をご参照ください。
|
|
[Runtime Log] |
タスクの詳細な実行プロセスを表示します。 |
|
[操作ログ] |
タスクまたはインスタンスの操作レコード (時刻、オペレーター、特定の操作を含む) を表示します。 |
|
[コード] |
本番環境の現在のタスクの最新のコードを表示します。コードが正しくない場合は、最新バージョンが正常にデプロイされているかどうかを確認してください。詳細については、「タスクのデプロイ」をご参照ください。 |
