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

Data Management:条件付き分岐ノードの設定

最終更新日:Dec 06, 2024

タスクフローで条件判定を行うには, タスクフローに条件分岐ノードを追加します。 タスクフロー内の後続のタスクは、条件分岐ノードが複数の指定された条件を満たす場合にのみ実行できます。 このトピックでは、条件分岐ノードを設定する方法について説明します。

シナリオ

タスクフローの実行中に、条件分岐ノードの条件式がtrueと評価された場合、それ以降のタスクが実行されます。 それ以外の場合、後続のタスクは実行されません。 条件分岐ノードは、次のシナリオまたは他の同様のシナリオに適用できます。

  • データエントリの数が指定された値に達したら、データをバックアップして削除します。

  • 売上高が指定された条件を満たしたときに通知を送信します。

  • 特定のファイルが存在するか確認してください。 ファイルが存在しない場合は作成します。

使用上の注意

条件分岐ノードは、タスクフロー内に独立して存在することはできません。 データ統合、データ処理、またはステータスチェックを実行するノードにノードを接続する必要があります。 このようにして、条件分岐ノードの設定が有効になります。

手順

  1. DMSコンソールV5.0 にログインします。

  2. 上部のナビゲーションバーで、データ开発 > データ开発 > タスクオーケストレーションを選択します。

    説明

    DMSコンソールをシンプルモードで使用する場合は、左上隅の2023-01-28_15-57-17.pngアイコンの上にポインターを移動し、[すべての機能] > [データ開発] > [データ開発] > [タスクオーケストレーション] を選択します。

  3. 管理したいタスクフローの名前をクリックして、タスクフローの詳細ページに移動します。

    説明

    タスクフローの作成方法の詳細については、「概要」をご参照ください。

  4. キャンバスの左側にあるタスクタイプリストで、条件付きブランチノードをキャンバスの空白領域に移動します。

  5. 条件付きブランチ ノードをダブルクリックします。

  6. 条件分岐ノードの [設定] タブで、1つ以上の条件式を設定します。

    • [変数名] ドロップダウンリストから上流変数または状態を選択します。

      説明
      • 右側のナビゲーションウィンドウの [変数設定] タブをクリックすると、[入力変数] タブに上流の変数とタスクの状態が表示されます。

      • [変数名] ドロップダウンリストから状態を選択した場合、リレーショナル演算子または変数値パラメーターを設定する必要はありません。

    • [リレーショナル演算子] ドロップダウンリストから比較演算子を選択します。

    • 変数値フィールドに、予想される変数値または変数を入力します。

      変数は ${var_name} 形式である必要があります。 次のタイプの変数を入力できます。

      • 上流変数: 上流変数は上流ノードからの出力変数です。 右側のナビゲーションウィンドウの [変数設定] タブをクリックすると、[入力変数] タブに上流の変数が表示されます。

      • システム変数: 右側のナビゲーションウィンドウの [変数設定] タブをクリックすると、[入力変数] タブにシステム変数が表示されます。 システム変数の詳細については、「システム変数」をご参照ください。

      • 時間変数: デフォルトの時間変数またはタスクフロー変数を使用します。 タスクフロー変数の設定方法の詳細については、「時間変数の設定」をご参照ください。

    • オプション: 条件式の右側にあるアイコンをクリックして、式を作成または削除します。

      • 加: 元の式と同じレベルで条件式を作成し、論理演算子ドロップダウンリストから論理演算子を選択して、新しい式と元の式の間で使用します。

      • 5加4: 条件式を作成し、元の式と一緒に次のレベルに移動します。 新しい式と元の式の間で使用する論理演算子ドロップダウンリストから論理演算子を選択します。

      • 减: 条件式を削除します。

      9任务编排条件表达式2

    説明
    • 最大3レベルの条件式を作成できます。

    • 条件式セクションの右側にある [プレビュー] セクションで、条件式の判定ロジックを確認できます。

    • 条件付き分岐ノードの式を設定する場合、SQL代入ノードとElastic Compute Service (ECS) リモートコマンドノードに指定された出力変数を使用できます。 詳細については、「SQL割り当てノードの設定」および「ECSリモートコマンドノードの設定」をご参照ください。

AND関係の条件付きブランチノードの設定

タスクフローの条件付き分岐ノードがAND関係にある場合、ノードが実行されていないときに他のノードが正常に実行されたかどうかに関係なく、DMSはタスクフロー全体を失敗とマークします。

OR関係での条件付き分岐の設定

タスクフローの条件分岐ノードがOR関係にある場合、タスクフロー内のノードが正常に実行されたときに他のノードが正常に実行されたかどうかに関係なく、DMSはタスクフロー全体を正常としてマークします。

タスクフロー内の条件分岐ノードの強制実行成功を指定する条件式を設定した場合 (条件分岐ノード3の条件分岐ノードを正常に実行するかどうか=true式など) 、DMSは、分岐ノードが正常に実行されたときにタスクフロー全体を成功とマークします。

関連する API

条件付き分岐ノードを設定する場合、SQL代入ノードまたはECSリモートコマンドノードに指定された出力変数を使用できます。 詳細については、「SQL割り当てノードの設定」および「ECSリモートコマンドノードの設定」をご参照ください。