RESTクライアントAPIによるFlowの実行

Flowを実行すると、データハブでは以下を実行します。

  1. コレクタを呼び出して、処理するレコードのIDのリストを取得します。
  2. リストをバッチに分割します。
  3. Flowのmain.[xqy|sjs]を実行するカスタムREST拡張機能を呼び出します。

MarkLogicデータハブでは、以下の指定が可能なRESTクライアントAPI拡張機能runFlowを提供しています。

  • 処理する個々のレコード
  • 実行する単一ステップ
ml:runFlow

指定したレコードを処理するためのFlow全体 、またはFlow内の単一ステップを実行するRESTクライアントAPI拡張機能。

POST /v1/resources/ml:runFlow?rs:job-id=YourJobID&rs:flow-name=YourFlowName&rs:step=1&database=YourSourceDatabase&rs:target-database=YourTargetDatabase&rs:options={ "uris" : [ "comma-separated","uris","of","records","to","process" ] }

rs:job-id
Flowの実行に関連付けられた一意のジョブID。このオプションは、大規模なプロセスの一環としてFlowが実行される場合に使用できます(例えば、NiFiが独自のジョブ/プロセスIDによりオーケストレーションされたプロセスなど)。既存のデータハブのジョブIDと同じにすることはできません。指定していない場合は、一意のデータハブジョブIDが割り当てられます。
rs:flow-name
Flowの名前。
rs:step
実行するステップのシーケンス番号。複数の特定のステップを実行するには、オーケストレーションツールを使用して、ステップごとに1つのrunFlowリクエストを送信します。
データベース
ソースデータを含むデータベース(例:data-hub-STAGING )。
rs:target-database
処理済みのデータを保存するデータベース(例:data-hub-FINAL)。
rs:options
Flowに渡す追加オプションを含むJSONオブジェクト。
  • 処理するレコードのリストを指定するには、処理するレコードのURIの配列を値として含むキーurisを追加します。