MergeRecord 2025.5.31.15

捆绑包

org.apache.nifi | nifi-standard-nar

描述

该处理器将多条面向记录的 FlowFiles 合并为一个 FlowFile,其中包含所有输入 FlowFiles 的记录。该处理器的工作原理是创建“数据箱”,然后将 FlowFiles 添加到这些数据箱中,直至填满。数据箱填满后,所有 FlowFiles 将合并为单个输出 FlowFile,该 FlowFile 将路由到“merged”关系。一个数据箱可能包含许多“like FlowFiles”。为了使两个 FlowFiles 被视为“like FlowFiles”,其必须具有相同的架构(由 Record Reader 确认),并且如果设置了 <Correlation Attribute Name> 属性,则该指定属性的值必须相同。有关更多信息,请参阅处理器使用情况和其他详细信息。NOTE:配置调度策略时,此处理器 NOT 应配置为 Cron Driven。

标签

content、correlation、event、merge、record、stream

输入要求

REQUIRED

支持敏感的动态属性

false

属性

属性

描述

属性策略

确定应将哪些 FlowFile 属性添加到捆绑包中。如果选择“Keep All Unique Attributes”,则捆绑的任何 FlowFile 上的所有属性都将保留,除非其值与其他 FlowFile 的值冲突。如果选择“Keep Only Common Attributes”,则只会保留捆绑包中所有 FlowFiles 上存在且值相同的属性。

correlation-attribute-name

如果指定,则只有当此属性的值相同时,两个 FlowFiles 才会捆绑在一起。如果未指定该属性,则 FlowFiles 按从队列中提取的顺序进行捆绑。

max-bin-age

将触发数据箱完成的最大数据箱使用年限。预期格式为 <duration> <time unit>,其中 <duration> 为正整数,并且时间单位为秒、分钟、小时

max-bin-size

捆绑包的容量上限。如果未指定,则没有上限。这是一个“软限制”,因为如果将 FlowFile 添加到数据箱,则该 FlowFile 中的所有记录都将被添加,因此可能会超过该限制,超出最后一个输入 FlowFile 中的字节数。

max-records

要包含在数据箱中的最大记录数。这是一个“软限制”,因为如果将 FlowFIle 添加到数据箱,则该 FlowFile 中的所有记录都将被添加,因此可能会超过该限制,超出最后一个输入 FlowFile 中的记录数。

max.bin.count

指定一次可在内存中保存的数据箱数量上限。此数值不应小于该处理器的最大并发线程数,否则创建的数据箱通常仅包含一个传入 FlowFile。

merge-strategy

指定用于合并记录的算法。“碎片整理”算法会将通过属性关联的多个片段重新合并为一个完整的 FlowFile 文件。“装箱算法”会生成一个由随机选取的 FlowFiles 填充的新 FlowFile。

min-bin-size

bin 的容量下限

min-records

要包含在数据箱中的最小记录数

record-reader

指定用于读取传入数据的控制器服务

record-writer

指定用于写出记录的控制器服务

关系

名称

描述

failure

如果无法创建捆绑包,则用于创建捆绑包的所有 FlowFiles 都将转移到“failure”

merged

包含合并记录的 FlowFile

original

用来创建捆绑包的 FlowFiles

写入属性

名称

描述

record.count

合并后的 FlowFile 将具有“record.count”属性,表示写入 FlowFile 的记录数。

mime.type

记录写入器指定的 MIME 类型

merge.count

合并到此捆绑包的 FlowFiles 数量

merge.bin.age

数据箱在被合并输出时的存在时长,以毫秒为单位。实际上,这是该捆绑包中所有 FlowFile 在该处理器中等待输出的最长时间

merge.uuid

将添加到原始 FlowFiles 属性的合并后的 FlowFile 的 UUID

merge.completion.reason

该处理器允许为合并 FlowFiles 配置多个阈值。 此属性表示哪些阈值导致 FlowFiles 被合并。有关每个可能值及其含义的解释,请参阅处理器的用法/文档,并参阅“其他详细信息”页面。

<Attributes from Record Writer>

配置的 Record Writer 返回的任何属性都将添加到 FlowFile。

用例

将许多任意记录组合在一起,以创建一个更大的文件

涉及其他组件的用例

将许多数据中特定字段具有相同值的记录组合在一起,以创建一个更大的文件

另请参阅

语言: 中文