MergeRecord 2025.5.31.15

バンドル

org.apache.nifi | nifi-standard-nar

説明

このプロセッサーは、複数の記録指向の FlowFiles を、入力 FlowFiles のすべての記録を含む単一の FlowFile にマージします。このプロセッサーは「ビン」を作成し、そのビンがいっぱいになるまで FlowFiles を追加することで動作します。ビンが一杯になると、すべての FlowFiles が1つの出力 FlowFile にまとめられ、その FlowFile は「マージされた」リレーションシップにルーティングされます。ビンは、潜在的に多くの「FlowFiles」のようなものから構成されます。2つの FlowFiles が「同じような FlowFiles」とみなされるためには、(Record Readerによって識別子として)同じスキーマを持ち、<Correlation Attribute Name> プロパティがセットされている場合、指定された属性の値が同じでなければなりません。詳細情報については、「プロセッサーの使用状況」と「その他の詳細」を参照してください。NOTE: このプロセッサーは Cron Driven で構成されてはいけません NOT。

タグ

コンテンツ、相関、イベント、マージ、記録、ストリーム

入力要件

REQUIRED

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

false

プロパティ

プロパティ

説明

属性戦略

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

correlation-attribute-name

指定された場合、2つの FlowFiles は、この属性に同じ値がある場合のみ、一緒にビニングされます。指定がない場合、 FlowFiles はキューから引き出された順にバンドルされます。

max-bin-age

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

max-bin-size

バンドルの最大サイズ。指定がない場合、最大値はありません。これは「ソフトリミット」であり、 FlowFile がビンに追加されると、その FlowFile のすべての記録が追加されるため、このリミットを超える可能性があるのは、最後に入力された FlowFile のバイト数までです。

max-records

ビンに含める記録の最大数。これは「ソフトリミット」であり、 FlowFIle がビンに追加されると、その FlowFile のすべての記録が追加されるため、最後に入力された FlowFile の記録数まで、この制限を超える可能性があります。

max.bin.count

一度にメモリに保持できるビンの最大数を指定します。この数は、このプロセッサーの最大同時スレッド数より小さくてはならない。さもないと、 作成されるビンは、多くの場合、単一の着信 FlowFile のみになります。

merge-strategy

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

min-bin-size

ビンの最小サイズ

min-records

ビンに含める最小記録数

record-reader

受信データの読み取りに使用するController Serviceを指定します。

record-writer

記録の書き出しに使用するController Serviceを指定します。

リレーションシップ

名前

説明

failure

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

merged

マージされた記録を含む FlowFile

original

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

属性の書き込み

名前

説明

record.count

マージされた FlowFile は、 FlowFile に書き込まれた記録数を示す「record.count」属性を持つことになります。

mime.type

Record Writerが示す MIME タイプ

merge.count

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

merge.bin.age

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

merge.uuid

元の FlowFile 属性に追加されるマージされた FlowFiles の UUID

merge.completion.reason

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

<Record Writerからの属性>

構成されたRecord Writerが返す属性はすべて、 FlowFile に追加されます。

ユースケース

複数の任意の記録を組み合わせて、1つの大きなファイルを作成します。

他のコンポーネントを含むユースケース

データファイルの特定のフィールドに同じ値を持つ多くの記録を結合して、1つの大きなファイルを作成します。

こちらもご覧ください