目次

Search

  1. はじめに
  2. ワークフロー
  3. ワークフロー変数
  4. ワークフローパラメータ
  5. クラスタタスク
  6. コマンドタスク
  7. ヒューマンタスク
  8. マッピングタスク
  9. 通知タスク
  10. ゲートウェイ
  11. ワークフローリカバリ
  12. ワークフロー管理

Developerワークフローガイド

Developerワークフローガイド

ゲートウェイの概要

ゲートウェイの概要

ゲートウェイは1つのシーケンスフローを複数のシーケンスフローに分割したり、複数のシーケンスフローを1つのシーケンスフローにマージしたりします。データ統合サービスは、実行時にシーケンスフローを評価し、指定した条件を満たすシーケンスフローのオブジェクトを実行します。
ゲートウェイはペアでワークフローに追加します。最初のゲートウェイは、前段階のワークフローオブジェクトからのシーケンスフローを分割し、選択した複数のオブジェクトに接続します。2番目のゲートウェイはシーケンスフローをマージして、1つのシーケンスフローをワークフローの次のオブジェクトに接続します。最初のゲートウェイは出力ゲートウェイです。2番目のゲートウェイは入力ゲートウェイです。1つのゲートウェイは、少なくとも2つのシーケンスフローに接続する必要があります。
各シーケンスフローは、ワークフローデータがたどることができるブランチを表します。ブランチでは、複数のオブジェクトを連続して接続できます。各ブランチの最終シーケンスフローは入力ゲートウェイに接続します。
出力ゲートウェイに作成したブランチは、同じタイプの入力ゲートウェイにマージされる必要があります。各ブランチが入力ゲートウェイにマージされる前に、ブランチの複数のワークフローオブジェクトを接続できます。
排他ゲートウェイと包含ゲートウェイを1つのワークフローに追加できます。ゲートウェイの間で1つのブランチのオブジェクトを実行するには、排他ゲートウェイを追加します。複数のブランチで並行してオブジェクトを実行するには、包含ゲートウェイを追加します。例えば、マッピングが正常に実行された場合はあるブランチへワークフローが進み、マッピングが失敗した場合は別のブランチに進むことを決定する場合は、排他ゲートウェイを使用します。1つのアプリケーションから並行して一連のマッピングを実行する場合は、包含ゲートウェイを使用します。
2つのゲートウェイの間のブランチに排他ゲートウェイと包含ゲートウェイを追加できます。2つのゲートウェイの間のブランチにゲートウェイを追加する場合、ゲートウェイをペアで追加します。例えば、出力包含ゲートウェイと入力包含ゲートウェイを2つのゲートウェイの間のブランチに追加します。または、出力排他ゲートウェイと入力排他ゲートウェイをブランチに追加します。ブランチに追加するゲートウェイは、ネストされたゲートウェイと呼ばれます。
出力ゲートウェイに作成したブランチは、同じタイプの入力ゲートウェイにマージされる必要があります。例えば、出力排他ゲートウェイからのブランチは、入力排他ゲートウェイにマージされる必要があります。各ブランチが入力ゲートウェイにマージされる前に、ブランチの複数のワークフローオブジェクトを接続できます。
出力ゲートウェイで作成したシーケンスフローに条件を定義します。データ統合サービスにより出力排他ゲートウェイで条件が評価される場合、trueと評価された条件を含む最初のシーケンスフローが実行されます。データ統合サービスにより出力包含ゲートウェイで条件が評価される場合、trueと評価された条件を含むすべてのシーケンスフローが実行されます。包含ゲートウェイのシーケンスフローは同時に実行されます。
出力ゲートウェイごとにデフォルトシーケンスフローを選択する必要があります。デフォルトシーケンスフローを選択することで、シーケンスフローの条件がすべてfalseに評価された場合でも、データが出力ゲートウェイから入力ゲートウェイに流れます。データ統合サービスでは、他のシーケンスフローに対する条件がfalseに評価された場合、排他ゲートウェイのデフォルトシーケンスフローが実行されます。包含ゲートウェイでは、デフォルトシーケンスフローは常に実行されます。デフォルトシーケンスフローに条件を定義する必要はありません。