DeduplicateRecord 2025.5.31.15

バンドル

org.apache.nifi | nifi-standard-nar

説明

このプロセッサーは、記録セット内の個々の記録を重複除去します。メモリ内のハッシュセットやブルームフィルターを使用して、ファイル単位で操作することができます。分散マップキャッシュを構成すると、複数のファイルにまたがる記録の重複を排除します。

タグ

変更、デデュープ、識別、重複、重複、フィルター、ハッシュ、変更、記録、置換、テキスト、一意、更新

入力要件

REQUIRED

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

false

プロパティ

プロパティ

説明

bloom-filter-certainty

BloomFilter タイプを使用する場合に望ましい偽陽性確率。例えば0.05という値を用いると、結果が偽陽性である確率は5%になります。この値を1に近づけるほど、より正確な結果が得られますが、その代償としてストレージの使用量が増えます。

cache-identifier

記録の計算キャッシュ・キーを上書きするオプションの式言語フィールド。このフィールドには、さらに ${record.hash.value} という属性があります。この属性には、ダイナミック・プロパティ(セットされている場合)または記録フィールドから派生したキャッシュ・キーが含まれます。

deduplication-strategy

重複記録の検出とルーティングに使用するストラテジー。単一の FlowFile の重複を検出するオプションはインメモリで動作しますが、複数の FlowFiles にまたがる検出は分散マップキャッシュを利用します。

distributed-map-cache

このプロパティは、重複除外戦略が「複数ファイル」にセットされている場合に必要です。マップキャッシュは各記録について、キャッシュキーが存在するかどうかをアトミックにチェックし、存在しない場合はそれをセットします。

filter-capacity-hint

処理される一意な記録の総数の見積もり。この数値が正確であればあるほど、 BloomFilter の偽陰性は少なくなります。

filter-type

一致する RecordPath の条件に基づいて、記録が以前に参照されたかどうかを判断するために使用されるフィルター。ハッシュセットが選択された場合、Java HashSet オブジェクトが、遭遇したすべての記録の重複排除に使用されます。ブルームフィルターオプションを選択すると、ブルームフィルターが使用されます。ブルームフィルターオプションはメモリ消費が少ないですが、偽陽性の可能性があります。

include-zero-record-flowfiles

重複リレーションシップまたは非重複リレーションシップのいずれかに送信された FlowFile に記録がない場合、このプロパティに false の値を指定すると、 FlowFile が削除されます。そうでない場合は、空の FlowFile が発されます。

put-cache-identifier

各記録について、分散マップキャッシュにキャッシュ識別子が存在するかどうかをチェックします。存在せず、このプロパティがtrueの場合、識別子をキャッシュに入れます。

record-hashing-algorithm

キャッシュキーのハッシュに使用されるアルゴリズム。

record-reader

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

record-writer

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

リレーションシップ

名前

説明

duplicate

重複として検出された記録は、このリレーションシップにルーティングされます。

failure

キャッシュと通信できない場合、 FlowFile にはペナルティが課せられ、この関係にルーティングされます。

non-duplicate

キャッシュにない記録は、このリレーションシップにルーティングされます。

original

致命的なエラーが発生しない限り、元の入力 FlowFile は、この関係に送信されます。

属性の書き込み

名前

説明

record.count

宛先に書き込まれた記録数 FlowFile。

こちらもご覧ください