すべてのプロダクト
Search
ドキュメントセンター

DataWorks:ワークフロー

最終更新日:Mar 26, 2026

数十のタスクを正しい順序で、適切なタイミングに、かつ入力データが準備完了後にのみ実行する必要がある複雑なデータパイプラインを管理するには、単なるジョブスケジューラでは不十分です。DataWorks の 定期実行ワークフロー は、視覚的な有向非循環グラフ(DAG)オーケストレーションと、二重トリガー方式の実行モデルを組み合わせることでこの課題を解決します。すなわち、タスクインスタンスは、スケジュールされた時刻が到来したうえで、すべての上流依存タスクが正常終了した場合にのみ実行されます。これにより、データパイプラインは安定的・秩序立てられた状態で、自己完結型に実行されます。

定期実行ワークフローは、以下の用途でご利用ください。

  • 固定スケジュールによるデータ処理の自動化:データ同期、データクレンジング、集約などのタスクを、毎日、毎時、または毎週といった間隔で実行します。

  • 複雑な有向非循環グラフ(DAG)依存関係フローの構築:視覚的なドラッグ&ドロップキャンバスを使用して、MaxCompute SQL、Hologres、E-MapReduce(EMR)、Python およびその他のノードタイプを、上流/下流の依存関係で接続します。

  • 複数のサブタスクを一元的にスケジュールおよび管理:論理的に関連するタスクを 1 つのワークフローにグループ化し、単一のユニットとしてスケジュールおよび監視します。

重要

ワークフローは、新しいバージョンの DataWorks Data Studio のみで利用可能です。ご使用中のバージョンを確認するには、「よくある質問」をご参照ください。

クイックスタート

このセクションでは、シンプルな定期実行ワークフローをゼロから構築する手順を説明します。目標は、前日の注文総数を毎日 00:05 に自動計算し、結果をテーブルに書き込むことです。

このパイプラインは、以下の 2 つのノードで構成されます。

  • 仮想ノードstart_node)— 制御の開始ポイント

  • MaxCompute SQL ノードcount_orders)— データ処理ステップ

ステップ 1:コンピュートエンジンと結果テーブルの準備

このステップでは、ワークフローが利用する基盤インフラストラクチャを設定します。

  1. 対象のワークスペースで、MaxCompute をコンピュートエンジンとしてバインドします。

  2. MaxCompute で結果テーブルを作成します。

    -- 日次注文数を格納するための結果テーブルを作成
    CREATE TABLE IF NOT EXISTS dw_order_count_test (
        order_date STRING,
        total_count BIGINT
    )
    PARTITIONED BY (ds STRING); -- 日付によるパーティション

ステップ 2:定期実行ワークフローの作成

このステップでは、すべてのノードとスケジューリング構成を保持するワークフローのコンテナを作成します。

  1. DataWorks コンソールの「ワークスペース」ページに移動します。上部のナビゲーションバーで、目的のリージョンを選択します。対象のワークスペースを見つけ、「ショートカット」>「Data Studio」を「操作」列から選択します。> ボタンに「Data Development」と表示されている場合は、旧バージョンが開きます。クリックしないでください。

  2. 左側のナビゲーションウィンドウにある image アイコンをクリックします。「ワークスペースディレクトリ」の右側にある ![image](https://help-static-aliyun-doc.aliyuncs.com/assets/img/en-US/9003941571/p852270.png) をクリックし、「ワークフローの作成」を選択します。

  3. 新規ワークフロー」ダイアログボックスで、「スケジューリングタイプ」を「定期実行スケジューリング」に設定し、名前(例: minimal_daily_demo)を入力して作成を完了します。

ステップ 3:ワークフローのオーケストレーション

このステップでは、DAG キャンバスを使用してパイプラインの構造を定義します。

  1. ワークフローキャンバス上で、左側のコンポーネントパネルから 仮想ノード をドラッグし、名前を start_node に設定します。> 仮想ノード はワークフローの開始ポイントを定義するプレースホルダーであり、実際の計算処理は行いません。

  2. MaxCompute SQL」ノードをキャンバス上にドラッグし、名前を count_orders に設定します。

  3. start_node の下部にあるドットをクリックし、count_orders の上部まで線をドラッグして依存関係を作成します。

ステップ 4:ノードコードの記述

このステップでは、毎日実行されるビジネスロジックを追加します。

重要

インテリジェントなコード補完を有効にするには、DataWorks Copilot を有効化してください。

  1. count_orders をダブルクリックして、ノードのコードエディタを開きます。

  2. SQL ロジックを記述します。この例では、シミュレートされたデータを使用します。

    -- bizdate は、ランタイム時に注入されるスケジューリングパラメーターです。
    -- $[yyyymmdd-1] は前日の日付(例:本日が 20260120 の場合、20260119)に解決されます。
    INSERT OVERWRITE TABLE dw_order_count_test PARTITION (ds='${bizdate}')
    SELECT
        '${bizdate}' AS order_date,
        COUNT(*) AS total_count
    FROM (SELECT 1 AS id UNION ALL SELECT 2 AS id) t; -- シミュレートされたデータ

    > ノード開発の詳細については、「MaxCompute SQL ノード」をご参照ください。

  3. 保存 をクリックします。

ステップ 5:スケジューリングサイクルとパラメーターの構成

このステップでは、ワークフローの実行タイミングと、SQL に渡す日付値を指定します。

  1. ワークフローキャンバスに戻ります。右側のパネルで、「スケジューリング」>「スケジュール時刻」に移動します。

    • スケジューリングサイクル」を「毎日」に設定します。

    • スケジュール時刻」を 00:05 に設定します。

  2. count_orders ノードエディタで、「スケジューリング構成」>「スケジューリングパラメーター」に移動し、以下を追加します。

    • パラメーター名」:bizdate

    • パラメーター値」:$[yyyymmdd-1](前日の日付)

ステップ 6:ノードおよびワークフローのデバッグ

デバッグは、ワークフローを本番環境に投入する前に、コードロジックを検証するためのものです。

  1. ノードのデバッグ

    1. ノードエディタの右側で、「デバッグ構成」をクリックします。

      • コンピュートエンジン」で、ステップ 1 で設定した MaxCompute エンジンを選択します。

      • スクリプトパラメーター」で、「今回の実行で使用する値」(デフォルトは前日の日付)を設定します。

    2. ツールバーの「実行」をクリックします。ノードは、指定したパラメーターで実行されます。

    3. 結果が正しく表示されたら、「スケジューリング構成への同期」をクリックして、デバッグ構成をスケジューリング構成に適用します。

  2. ワークフロー全体のデバッグ

    1. ワークフローキャンバスの上部ツールバーにある image アイコンをクリックします。

    2. ダイアログボックスで、ワークフロー変数の「現在の実行値」を入力します。たとえば、本日が 20260120 の場合、bizdate20260119 に設定します。

ステップ 7:本番環境への公開

公開を行うと、定義されたスケジュールで実行される定期実行タスクが本番環境に作成されます。

  1. ワークフローに戻り、上部ツールバーの image ボタンをクリックします。

  2. 公開パネルで、システムが依存関係および構成のチェックを実行します。チェックが完了したら、「本番環境へのデプロイメントを開始」をクリックし、「完全デプロイメント」を選択します。

  3. オペレーションセンター」に移動し、ワークフローが定期実行タスクリストに表示されることを確認します。

これで、ワークフローは毎日 00:05 に実行されるようになります。

ノードタイプ

DataWorks におけるすべてのオーケストレーションは、DAG キャンバス上で接続されたノードから構成されます。以下の表では、利用可能なすべてのノードタイプと、それぞれの使用シーンをまとめています。

ノード必要なエディション機能使用シーン
仮想ノードすべてのエディションワークフローの開始点となる、実際の処理を行わないプレースホルダーすべてのワークフローには、ルートノードとして 1 つ必要です
ブランチノード標準エディション以降上流の結果に基づいて、異なる下流パスへ実行をルーティング異なる結果(例:「データ存在」vs. 「データなし」)に対して異なる処理が必要な場合
マージノード標準エディション以降複数の上流ブランチのうちいずれか 1 つが完了するのを待って、その後に下流処理を継続複数のブランチが収束し、そのうち 1 つだけが成功すれば次のステップに進める場合
For-each ノード標準エディション以降代入ノードの結果セットを反復処理し、各要素ごとに下流タスクを 1 回実行動的なリスト(例:31 県、複数のテーブル)を処理する場合
Do-while ノード標準エディション以降条件が満たされるまでループし、その後終了外部のステータスをポーリングする場合(例:同期が完了するまで 10 分ごとに確認)
HTTP トリガーEnterprise Edition外部システムからの HTTP リクエストを受信し、DataWorks タスクを起動上流の業務システムが DataWorks パイプラインを起動する必要がある場合
チェックノードProfessional Edition 以降OSS ファイルや MaxCompute パーティションなど、外部リソースを監視し、リソースが準備完了すると下流タスクを起動下流タスクが、外部プロセスによって生成されたファイルやパーティションに依存する場合
依存関係チェックノードEnterprise Editionクロスサイクルまたはクロスワークスペースの依存関係をポーリングし、条件が満たされると下流タスクを起動日次タスクが、直前の 24 件の時間単位タスクすべての完了を待機する必要がある場合
SUB_PROCESS ノードすべてのエディション再利用可能なサブワークフローを参照複数のワークフローが同じ処理ロジック(例:データクレンジング、フォーマット)を共有する場合

ノードの完全なリファレンスについては、「新しい Data Studio の汎用ノード」をご参照ください。

設計および構成

ワークフローのオーケストレーション

シンプルなオーケストレーション

DataWorks では、マルチソースからのデータ取り込みからレイヤー化モデリングに至るまでの複雑なデータパイプラインを、視覚的な DAG キャンバス上で接続された個別のノードに分解できます。上流ノードが成功すると、即座に下流タスクを起動し、パイプライン全体を安定的かつ秩序立てられた状態に保ちます。フローは静的・線形・単方向です。

ロジック再利用のためのサブワークフロー

データクレンジング、要約統計、品質チェックなど、複数のワークフローが共通の処理ステップを共有する場合、それらを サブワークフロー として再利用可能にカプセル化し、SUB_PROCESS ノードを使用します。これにより、ワークフロー間でのロジック重複を回避できます。共有ステップが変更された場合、サブワークフローのみを更新すれば済みます。

サブワークフローの作成および使用方法:

  1. child_workflow」ワークフローで、「プロパティ」を「参照可能」に設定します。ワークフローがサブワークフローになります。

  2. メインワークフローで、SUB_PROCESS ノードをドラッグし、「child_workflow」を参照先ワークフローとして選択します。

サブワークフローには以下の制約があります。

  • 内部専用の依存関係:サブワークフローおよびその内部ノードは、外部タスクに依存できません。

  • 分離性:サブワークフローは、外部タスクの直接的な依存関係になることはできません。

  • 受動的トリガー:公開後は、スケジュールインスタンスが自動生成されません。SUB_PROCESS ノードから呼び出された場合にのみ実行されます。> 詳細については、「SUB_PROCESS ノード」をご参照ください。

image

大規模ワークフローの分割

パフォーマンスおよび可読性を維持するため、100 ノードを超えるワークフローは分割することを推奨します。

  • ビジネスドメイン別に分割:トランザクション、ユーザー、製品など、さまざまなビジネス主題の処理パイプラインを独立したワークフローに分離します。

  • SUB_PROCESS ノードによる共通ロジックのカプセル化:再利用可能なステップ(データクレンジング、フォーマットなど)を参照可能なワークフローにラップします。

スケジューリング依存関係

スケジューリング依存関係は、孤立したノードを順序立てられたデータパイプラインに接続します。ノードは、スケジュールされた時刻が到来したうえで、すべての上流タスクが正常終了した場合にのみ実行されます。

完全なリファレンスについては、「スケジューリング依存関係」をご参照ください。

キャンバス上でノードを接続すると、DataWorks が自動的にそれらの間にスケジューリング依存関係を作成します。より複雑なクロスワークフローまたはクロスサイクルの依存関係については、以下の依存関係タイプを構成します。

依存関係タイプ使用シーン
ワークフローレベルの依存関係あるワークフロー全体が、別のタスク(ワークフローまたはスタンドアロンノード)の完了を待ってから開始する必要がある場合販売ワークフローが、基盤データワークフローの完了を待機する
ノードレベルの依存関係ワークフロー内の特定ノードが、同一ワークフローに含まれない外部タスクを待機する必要がある場合レポートワークフロー内のサマリーノードが、財務システム内の特定ノードを待機する
クロスサイクル依存関係タスクの現在のサイクルインスタンスが、異なるサイクル(同一または異なるノード)のインスタンスに依存する場合今日のインスタンスが昨日のインスタンスの成功を待機する — パーティションテーブルへの INSERT OVERWRITE や累積計算に有用
クロスワークスペース依存関係タスクが、別の DataWorks ワークスペース内のタスクに依存する場合。ワークスペース名およびノードの出力名、名前、または ID でリンクされます。マーケティングワークスペース内のタスクが、会計ワークスペース内の主要データを参照する
image

パラメーター設計

ワークスペースパラメーターは、DataWorks Professional Edition 以降でのみ利用可能です。

DataWorks は、範囲が狭い順から広い順に並べた 4 段階のパラメーター体系をサポートしています。ノード間で構成を重複させないために、適切な段階を選択してください。

段階タイプ範囲使用シーン
1(最も狭い)ノードパラメーター単一ノードSQL コードにランタイムで動的な日付を注入する場合。定数、組み込み変数、カスタム時間式をサポートします。「スケジューリングパラメーターのソースと式」をご参照ください。
2コンテキストパラメーターノード間上流ノードの出力値を下流ノードに渡す場合。定数、変数、実行結果をサポートします。「ノードコンテキストパラメーターの構成および使用」をご参照ください。
3ワークフローパラメーターワークフロー内のすべてのノード数十のノードにまたがる共有ビジネス識別子(例:リージョンコード、テーブルプレフィックス)を管理する場合。サブワークフローは親ワークフローのパラメーターを参照できます。「ワークフローパラメーター」をご参照ください。
4(最も広い)ワークスペースパラメーターワークスペース内のすべてのノード開発環境と本番環境で異なる環境固有の値(例:データベース名、リソースパス)を定義する場合。「ワークスペースパラメーターの使用」をご参照ください。
image

スケジューリングサイクル

重要

定期実行ワークフロー と旧式の ビジネスプロセス の主な違いは、ワークフローのスケジューリングサイクルが単一の単位として構成されることです。一方、ビジネスプロセスは単なるタスク整理用のフォルダであり、全体としてスケジューリングすることはできません。

スケジューリングサイクルはワークフローレベルで設定されます。ワークフロー内のノードは、独自の独立したサイクルを持つことはできず、ワークフローのサイクルを継承し、ワークフローのスケジュール時刻からのオフセットとして「遅延実行時刻」のみを指定できます。

ディメンションワークフローレベルの構成内部ノードの動作
時間属性絶対時刻(例:02:00)相対時刻(ワークフローのスケジュール時刻からの遅延)
サイクル属性毎日、毎時、毎分、毎週、毎月、毎年ワークフローサイクルを継承;変更不可
トリガー論理物理時刻到達 + 上流タスク成功物理時刻 + 遅延時刻 + 上流タスク成功

デバッグおよび実行

単一ノードのデバッグ

単一ノードのデバッグは、上流/下流の依存関係を一切トリガーせずに、SQL ステートメント、Python スクリプト、データ統合タスクなどのノード内部ロジックを検証します。

  1. ノードの右側パネルで、「デバッグ構成」を構成します。

    パラメーター説明
    コンピュートエンジンバインド済みのコンピュートエンジンを選択します。利用可能なエンジンがない場合は、ドロップダウンリストから「コンピュートエンジンの作成」を選択します。コンピュートエンジンとリソースグループが接続されていることを確認してください。「ネットワーク接続ソリューション」をご参照ください。
    リソースグループコンピュートエンジンのバインド時に接続性テストを通過したリソースグループを選択します。一部のノードでは、リソースグループにカスタムイメージを適用することで、実行環境を拡張できます。
    データセット(任意)Shell および Python ノードは、データセットの使用をサポートしており、OSS 内の非構造化データにアクセスできます。
    スクリプトパラメーター(任意)ノードコード内で ${parameter_name} を使用して変数を定義します。ここでは「パラメーター名」と「パラメーター値」を設定します。「スケジューリングパラメーターのソースと式」をご参照ください。
    関連付けロール(任意)Shell および Python ノードは、関連付けロールの構成をサポートしており、他のクラウドプロダクトのリソースにアクセスできます。
  2. 保存 をクリックし、続いて 実行 をクリックします。

  3. ノードエディタの下部で実行ログおよび結果を確認します。

ワークフローのデバッグ

ワークフローのデバッグは、データ依存関係、パラメーターの受け渡し、およびパイプライン全体の実行順序を検証します。個々のノードのデバッグを終えた後、ワークフロー全体または部分的なパイプラインをデバッグします。

  1. ワークフローの DAG キャンバスで、上部ツールバーの 実行 をクリックします。部分的なパイプラインを検証するには、ノードを右クリックし、「このノードまで実行」または「このノードから実行」を選択します。

  2. ダイアログボックスで、このデバッグセッション用にすべてのノード変数(例:${bizdate})に一時的な値を割り当てます。

  3. システムは、DAG で定義された依存関係に従って、上から下へ順次ノードを実行します。キャンバス上でノードのステータスをリアルタイムで監視し、任意のノードをクリックして実行ログを表示できます。

  4. キャンバス左側の 戻る をクリックして、開発状態に戻ります。右側の実行履歴には、すべてのデバッグ実行記録が表示されます。

重要

制御フローノード(ループ、ブランチ、マージ)は、ワークフロー内に配置し、上流および下流のノードとともに一緒にデバッグする必要があります。

管理および運用

ワークフローノードの管理

DataWorks では、スタンドアロンノードをワークフローにインポートしたり、ノードをワークフローから移動したり、ワークフロー間でノードを転送したりできます。これらは、ノードをゼロから再構築することなく実行可能です。

既存ノードをワークフローにインポート

  1. 対象のワークフローをダブルクリックして、キャンバスエディタを開きます。

  2. 左側のコンポーネントパネルで、「ノードのインポート」タブに切り替えます。

  3. ノードタイプ」、「パス」、または「ノード名」でフィルターをかけて、対象ノードを探します。

  4. ノードをキャンバス上にドラッグします。

ノードをワークフローから移動

  • スタンドアロンノードへの変換:ディレクトリツリーまたはキャンバス上のノードを右クリックし、「ワークフローから移動」を選択し、対象パスを選んで確定します。

  • 別のワークフローへの移動:ノードを右クリックし、「別のワークフローに移動」を選択し、対象ワークフローを選んで確定します。また、ノードを直接対象ワークフローにドラッグすることもできます。

重要

ノードを移動する前に、既存のパイプラインへの影響を評価し、新しい場所で依存関係を再構成してください。ノードを移動すると、元のワークフローにおける上流および下流の依存関係が切断され、ノードに設定されたワークフローパラメーターは無効になります。

ワークフローのクローン作成

ワークフローのクローン作成は、すべての内部ノード、コード、依存関係を含む完全かつ独立したコピーを作成します。「ワークスペースディレクトリ」で対象のワークフローを右クリックし、「クローン」を選択します。

クローン作成したワークフローをコミットおよび公開する前に、以下の点を確認して、データ競合およびパイプラインの問題を防止してください。

  1. 出力テーブルおよび対象データソース:クローン作成したワークフローは、元のワークフローと同じ対象テーブルに書き込みます。複数のタスクが同一テーブルに書き込まないように、コード内のテーブル名を更新します(例: ods_user_table から dev_ods_user_table へ)。

  2. 上流依存関係:クローン作成したワークフローは、デフォルトで元の上流タスクに依存したままです。これが意図した動作かどうかを確認してください。

  3. パラメーター構成:日付パーティション(例:${bizdate})や入出力パスを含むカスタムパラメーターを確認し、新しい環境で正しく設定されていることを確認します。

ワークフロー内の個々のノードをクローン作成することもできますが、異なるワークフロー間でノードをコピーすることはできません。

バージョン管理

重要

内部ノードを個別に公開しても、親ワークフローの新しいバージョンが作成されます。

バージョン管理は、ワークフローに対するすべての変更を自動的に記録します。「ワークフローキャンバス」右側の「バージョン」パネルから、任意の以前のバージョンを表示、比較、復元できます。

バージョンパネルには、以下の 2 種類の記録が表示されます。

  • 開発記録:「保存」をクリックするたびに作成されます。これは進行中のスナップショットであり、本番環境には影響しません。

  • 公開記録:ワークフローが本番環境に正常に公開されたときに作成されます。これは、本番スケジューリングシステムが実行するものです。

代表的なユースケース

シナリオ操作
コード変更後に本番タスクが失敗した最後の安定した 公開記録 に復元するには「復元」を使用し、その後再公開します
いつ・誰がロジックを変更したかをトレースする必要があるバージョン一覧および「比較」機能を使用して、すべてのコード変更を表示します
保存されていないコードを誤って削除した最新の 開発記録

復元前の注意事項

  • 復元は現在の開発領域を上書きします:キャンバス上のすべてのコードおよび構成が、履歴バージョンで置き換えられます。未保存の変更がある場合は、復元前にローカルでバックアップしてください。

  • 復元後に再公開する必要があります:復元は開発状態のみを復元します。ロールバックを本番環境で有効にするには、ワークフローを手動で公開してください。

公開および運用

ワークフローインスタンスのステータス

ワークフローの全体的なステータスは、その内部ノードの最終ステータスを反映します。システムがワークフローのステータスをどのように決定するかを理解することで、問題の診断を迅速化できます。

ステータストリガー条件確認すべき項目
実行中スケジュール時刻到達 + 上流タスク成功
成功すべての重大ノードが正常終了
失敗単一の重大ノードが失敗オペレーションセンターで失敗したノードの実行ログを確認
失敗(フリーズノード)内部ノードがフリーズまたは一時停止されており、それが上流依存関係である場合ノードのフリーズ解除または依存関係の再構成
成功(マージノード例外)マージノードは、一部の上流ブランチが失敗した場合でも成功と評価されるマージノードの上流チェックを確認して、サイレント失敗を防ぎます

特殊なシナリオ:

  • ワークフロータスクの Data Backfill インスタンスをフリーズすると、ワークフローインスタンスは 成功 と設定されます。

  • Data Backfill シナリオにおいて、システムがタスクを実行できないと判断した場合、ワークフローは 失敗 と設定されます。

重要

実際の障害イベント発生とインスタンスステータス更新の間には、遅延があります。

image

制限事項

項目制限
ワークフローあたりの最大ノード数400 ノード(キャンバスパフォーマンスおよび保守性を最適化するには、100 ノード未満を推奨。大規模ワークフローは小さな単位に分割してください)
並列インスタンス定期実行ワークフローは、ワークフローレベルでの最大並列インスタンス数制限をサポートしていません。この制限は、個々のノードレベルで「スケジューリング構成」を介して設定します。「ノードスケジューリング構成」をご参照ください。
サブワークフローの依存関係「参照可能」が有効化されたサブワークフローおよびその内部ノードは、外部タスクに依存できず、外部タスクがそれを直接依存することもできません。この制約に違反すると、公開エラーが発生します。
サブワークフローのスケジューリング公開後、サブワークフローはスケジュールインスタンスを自動生成しません。SUB_PROCESS ノードから呼び出された場合にのみ実行されます。

よくある質問

ワークフローとビジネスプロセスの違いは何ですか?

ワークフローはスケジュール可能な単位であり、独自のスケジューリングサイクルを持ち、定期実行タスクインスタンスを生成します。一方、ビジネスプロセスは単なるノード整理用のフォルダであり、全体としてスケジューリングすることはできません。

デバッグモードではタスクが正常に実行されますが、スケジュール実行で失敗します。原因は何ですか?

これはほぼ常に環境の不一致が原因です。以下の点を確認してください。

  • リソースグループ:デバッグ実行では個人用リソースグループが使用されることが多く、スケジュール実行では本番リソースグループが使用されます。本番リソースグループがアクティブであり、十分な容量があり、適切な権限を持っていることを確認してください。

  • 権限:本番スケジュール実行に使用されるアカウントが、特定のテーブル、関数、またはリソースへのアクセス権限を持っていない可能性があります。

  • 依存関係:本番環境では、開発環境とは異なる上流依存関係が存在するか、上流の出力が本番環境に存在しない可能性があります。

インスタンスが「待機中」のまま停止しています。何を確認すべきですか?

インスタンスは、スケジュール時刻が到来し、リソースが利用可能になり、すべての上流依存関係が成功した場合にのみ実行されます。以下の順序で確認してください。

  1. 上流依存関係が完了していない:オペレーションセンターで、インスタンスの「依存関係」ビューを開き、まだ成功していない上流タスクを確認します。

  2. リソースキューが満杯:コンピュートエンジンのリソースグループキューが上限に達しています。タスクはリソースの利用を待機しています。

  3. ワークフローまたはノードがフリーズしている:ワークフローまたは任意の上流ノードが手動でフリーズまたは一時停止されていないか確認します。

  4. インスタンスがまだ生成されていない:ワークフローのスケジュール時刻が経過したか確認します。新しく公開されたワークフローは、次のスケジューリングサイクルで最初のインスタンスを生成します。「インスタンス生成方法:公開後の即時生成」をご参照ください。

一部のノードが成功しているにもかかわらず、ワークフロー全体が「失敗」と表示されます。なぜですか?

  • クリティカルパスの失敗:下流依存関係を持つノードのいずれかが失敗した場合、他の並列ブランチが成功していても、ワークフロー全体が 失敗 とマークされます。

  • フリーズノード:フリーズされた内部ノードが、ワークフロー全体の失敗を引き起こします。