MergeContent 2025.5.31.15

バンドル

org.apache.nifi | nifi-standard-nar

説明

ユーザー定義の戦略に基づいて、 FlowFiles のグループをマージし、それらを単一の FlowFile にパッケージ化します。異なる接続の FlowFiles からグループ・オブ・FlowFiles が作成されないため、プロセッサーは単一の着信接続のみで構成することをお勧めします。このプロセッサーは、mime.type属性を適切に更新します。NOTE: このプロセッサーは Cron Driven で構成されてはいけません NOT。

タグ

archive, concatenation, content, correlation, flowfile-stream, flowfile-stream-v3, merge, stream, tar, zip

入力要件

REQUIRED

機密動的プロパティをサポート

false

プロパティ

プロパティ

説明

属性戦略

どの FlowFile 属性をバンドルに追加するかを決定します。「Keep All Unique Attributes」が選択されている場合、バンドルされる FlowFile の属性は、その値が他の FlowFile の値と競合しない限り保持されます。「Keep Only Common Attributes」を選択すると、バンドル内のすべての FlowFiles に同じ値で存在する属性だけが保存されます。

ビン終了チェック

各 FlowFile に対して評価される式言語 Expression を指定します。式の結果が「true」の場合、ビンが最小エントリ数や最小サイズを満たしていなくても、 FlowFile が対応するビンは終了されます。ビンの終了をトリガーする FlowFile 自体が最大ビンサイズより大きい場合、他のビンの終了をトリガーすることなく、そのビンに置かれることに注意してください。このプロパティを使用する場合は、フロー接続で優先順位付けを使用して、希望通りの順序になるようにすることをお勧めします。

圧縮レベル

Zip Merge 形式を使用する場合に使用する圧縮レベルを指定します。Zip Merge 形式を使用しない場合、この値は無視されます。

相関属性名

指定された場合、「like FlowFiles」は「like FlowFiles」はこの属性に同じ値を持つ FlowFiles を意味します。指定がない場合、 FlowFiles はキューから引き出された順にバンドルされます。

デリミター戦略

Header、Footer、Demarcatorがそれぞれのコンテンツを含むファイルを指すべきか、プロパティの値をコンテンツとして使うべきかを決定します。

デマケーターファイル

使用するデマケーターを指定するファイル名またはテキスト。指定がない場合、デマケーターは供給されません。

FlowFile 挿入戦略

<Bin Termination Check> プロパティに基づいて、指定された FlowFile がビンを終了する場合、 FlowFile がビンに含まれるべき場所を指定します。

フッターファイル

使用するフッターを指定するファイル名またはテキスト。指定がない場合、フッターは提供されません。

ヘッダーファイル

使用するヘッダーを指定するファイル名またはテキスト。指定されない場合、ヘッダーは提供されません。

キープパス

Zip または Tar Merge 形式を使用する場合、 FlowFiles' のパスをエントリ名に含めるかどうかを指定します。

最大ビン年齢

ビンが完了するトリガーとなる、ビンの最大年齢。期待される形式は<duration> <time unit> であり、<duration> は正の整数、time unit は秒、分、時間のいずれかです。

グループの最大人数

バンドルの最大サイズ。指定がない場合、最大値はありません。

最大エントリー数

バンドルに含めるファイルの最大数

Binsの最大数

一度にメモリに保持できるビンの最大数を指定します。

マージ形式

コンテンツのマージに使用する形式を決定します。

マージ戦略

コンテンツのマージに使用するアルゴリズムを指定します。「Defragment」アルゴリズムは、属性によって関連づけられたフラグメントを1つのまとまった FlowFile に戻します。「Bin-Packing Algorithm」は、任意に選ばれた FlowFiles に自動入力された FlowFile を生成します。

最小グループサイズ

バンドルの最小サイズ

最低エントリ数

バンドルに含めるファイルの最小数

Tar修正時間

Tar マージ形式を使用する場合、Tar エントリーに変更されたタイムスタンプを式 (${file.lastModifiedTime} など) または静的値で保存するかどうかを指定します。 ISO8601 の形式 'yyyy-MM-dd'T'HH:mm:ssZ' に一致する必要があります。

mergecontent-metadata-strategy

入力形式がメタデータをサポートしている FlowFiles (Avro など) の場合、このプロパティは、どのメタデータをバンドルに追加するかを決定します。「Use First Metadata」を選択すると、バンドルされる最初の FlowFile のメタデータのキー/値が使用されます。「Keep Only Common Metadata」を選択すると、バンドル内のすべての FlowFiles 、同じ値で存在するメタデータだけが保存されます。「Ignore Metadata」を選択した場合、メタデータは送信バンドル FlowFile に転送されません。「Do Not Merge Uncommon Metadata」が選択されている場合、メタデータの値が最初にバンドルされた FlowFile の値と一致しない FlowFile はマージされません。

リレーションシップ

名前

説明

failure

バンドルが作成できない場合、バンドル作成に使用されるはずだったすべての FlowFiles、失敗に転送されます。

merged

マージされたコンテンツを含む FlowFile

original

バンドル作成に使用された FlowFiles

属性の書き込み

名前

説明

filename

複数のファイルがマージされる場合、ファイル名は segment.original.filename 属性に由来します。その属性がソース FlowFiles に存在しない場合、ファイル名にはシステム時間と一致するナノ秒数がセットされます。Merge Format が TAR の場合、ファイル名には.tar、Merge Format が ZIP の場合、ファイル名には.zip、Merge Format が FlowFileStream の場合、ファイル名には.pkg が付加されます。

merge.count

このバンドルにマージされた FlowFiles の数。

merge.bin.age

マージされて出力されたときのビンの年齢(ミリ秒単位)。実質的にこれは、このバンドル内のどの FlowFile も、出力されるまでにこのプロセッサーで待機していた最大の時間です。

merge.uuid

元のフローファイルの属性に追加される、マージされたフローファイルの属性の UUID。

merge.reason

このプロセッサーでは、 FlowFiles をマージするために、いくつかの閾値を構成することができます。この属性は、どのThresholdsがマージされた FlowFiles かを示します。使用可能な各値とその意味については、プロセッサの使用法 / ドキュメントを参照し、「追加の詳細情報」ページを参照してください。

ユースケース

より少ない、より大きな FlowFiles を作成するために、テキストコンテンツの FlowFiles を一緒に連結します。

バイナリコンテンツを持つ FlowFiles を連結して、より少ない、より大きな FlowFiles を作成します。

SplitText、 UnpackContext、 SplitRecord などのプロセッサーによって、 FlowFiles に分割された FlowFile を再アセンブルします。

こちらもご覧ください