如何在nifi中简单组合流文件?

问题描述 投票:0回答:1

假设我有一个处理器生成的 100 个流文件,每个文件都包含不同的行。我想要一个包含 100 行的新流文件。我怎样才能做到这一点?

我尝试过 MergeContent 处理器,但它给了我原始 100 个流文件。

当前配置:

enter image description here

更新:

我调试了

MergeContent
的输出,在第一步
JOIN
中,看起来没问题,因为数据是
576.34 KB
,包含100行。但第二步
ATTRIBUTES_MODIFIED
似乎只输出1行到最终结果。

enter image description here

更新:

这就是我的整个过程。

  1. 从kafka一一获取。
  2. 将 kafka 消息转换为一个流文件中的一行字符串。
  3. 将多个流程文件合并为一个。
  4. 放入HDFS。

现在我陷入了第3步,无法将它们一一合并。我不在乎顺序或属性,我只需要限制数量。

更新:

我尝试将

correlation attribute
设置为
${kafka.topic}
,因为所有流文件都来自同一个kafka主题,但它们仍然无法合并:

enter image description here

apache-nifi
1个回答
5
投票

您使用的是MergeContent处理器中的原始还是

合并
关系?前者将向您提供相同的 100 个流程文件,以防您需要进行额外的处理;后者将为您提供一个包含所有合并流文件内容的单个流文件。从您的出处列表来看,合并事件正在成功发生,因此请仔细检查您正在使用的关系。如果可以的话,请发布您的流程截图。

© www.soinside.com 2019 - 2024. All rights reserved.