Apache nifi 使用nifi根据条件合并流文件?

Apache nifi 使用nifi根据条件合并流文件?,apache-nifi,kylo,Apache Nifi,Kylo,我有3个来自同一处理器的流文件 FF1->{a:1,b:2,c:'name'} FF2->{a:1,b:5,c:'fruit'} FF3->{a:2,b:3,c:'abc'} 通过使用MergeContent Processor,我能够合并所有流文件,但我的要求是在键上合并流文件 如果我使用键“a”联接,则预期输出: FF1->[{a:1,b:2,c:'name'},{a:1,b:5,c:'fruit'}] FF2->[{a:2,b:3,c:'abc'}]MergeContent有一个名为“Co

我有3个来自同一处理器的流文件

FF1->{a:1,b:2,c:'name'}

FF2->{a:1,b:5,c:'fruit'}

FF3->{a:2,b:3,c:'abc'}

通过使用MergeContent Processor,我能够合并所有流文件,但我的要求是在键上合并流文件

如果我使用键“a”联接,则预期输出:

FF1->[{a:1,b:2,c:'name'},{a:1,b:5,c:'fruit'}]


FF2->[{a:2,b:3,c:'abc'}]

MergeContent有一个名为“Correlation Attribute”的属性,该属性是流文件属性的名称,用于将具有相同属性值的流文件(示例中的键)分组在一起


您需要使用EvaluateJsonPath、ExtractText或一些自定义脚本处理器将字段“a”的值提取到流文件属性中,然后一旦进入“my.key”这样的属性,就将“my.key”放入相关属性属性中。

我们能在“Correlation attribute”中给出两个属性吗?@KarthikMannava它只能是一个属性,但您可以轻松地将UpdateAttribute放在前面,并创建一个新属性,如c=${a}{U${b},它现在将是a和b的组合值