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

时间:2019-05-26 14:26:16

标签: apache-nifi

假设我有一个处理器生成的100个流文件,每个文件包含不同的行。我想获取一个包含100行的新流文件。我该怎么办?

我已经尝试过MergeContent处理器,但是它可以为我提供100个流文件。

当前配置:

enter image description here

更新:

我调试了MergeContent的输出,在第一步JOIN中,由于数据为576.34 KB,其中包含100行,因此似乎没问题。但是第二步ATTRIBUTES_MODIFIED似乎只向最终结果输出1行。

enter image description here

更新:

这是我的整个过程。

  1. 从卡夫卡一个接一个。
  2. 在一个流文件中将kafka消息转换为一个行字符串。
  3. 将多个流文件合并为一个。
  4. PutHDFS。

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

更新:

由于所有流文件来自同一kafka主题,因此我尝试将correlation attribute设置为${kafka.topic},但它们仍无法合并:

enter image description here

1 个答案:

答案 0 :(得分:0)

您是否正在使用MergeContent处理器中的原始合并的关系?前者将向您提供相同的100个流文件,以备您需要进行其他处理时使用。后者将为您提供包含所有合并流文件内容的单个流文件。从您的出处列表看,合并事件正在成功发生,因此请仔细检查您正在使用的关系。如果可能,请发布您的流程的屏幕截图。