パイプラインを流れるデータ

パイプラインの中では、データは「センサー」「フィルター」「ジョイント」の順に流れていきます。
流れるデータは「センサー」および「フィルター」で生成されます。

センサーの入力データ

センサーで入力されるデータは、アクションの設定によって変わります。データにはレコードタイプとパラメータタイプのデータがあります。

パラメータタイプのデータ

パラメータタイプのデータは一つのリクエストの中で一つしか値を持たないものです。フォルダ監視系のアクションで取得できるファイル名などのデータがその一つです。フォルダ監視系のアクションでは、更新されたファイル一つ一つに対してリクエストが実行されます。つまり、ひとつのリクエストに対して一つのファイルデータができることになります。

レコードタイプのデータ

レコードタイプのデータは一つのリクエストの中で同じ名前で複数の値をもつデータです。データベース系のアクションのようにいくつかのフィールドを持ち、一つのリクエストの中で複数レコードの値を持つようなものがその一つです。データベース系のアクションでは、定期的にデータベースを監視し、取得した複数レコードの値を一つのリクエストで処理します。つまり、一つのリクエストに対して複数のレコードデータができることになります。

フィルターでの変数追加

センサーで取り込まれたデータをフィルターで加工するときに、そのまま値を更新してしまうと元のデータが再利用できなくなります。こういうときには、フィルターで新しい変数を追加することができます。フィルターで追加できる変数にはユーザー変数とレコード変数があります。

レコード変数、ユーザー変数の追加は、フィルターステージのデータタブで行います。

ユーザー変数

ユーザー変数はリクエストの中で一つだけ値を持ちます。たとえばレコードタイプのデータを変換してユーザー変数に代入した場合は最初のレコードの値の結果だけが有効になります。

レコード変数

レコード変数は、レコードタイプのデータをセンサーが取り込む場合に、その各レコードに対応した値を持つことができます。例えば、レコードタイプのデータを変換してレコード変数に代入した場合、各レコードの変換元のデータに対応した変換結果がレコード変数に格納されていきます。

データの流れる順序

パイプラインでは各ステージでアクションが一つずつ実行されていきます。
レコードタイプのデータがある場合、すべてのレコードに対して処理が完了してから次のアクションへと進みます。

ジョイントが直列実行の場合

ジョイントが並列実行の場合

▲ このページのトップへ