NiFi:路由CSV,按内容拆分和按相同内容更改名称

时间:2018-10-05 13:33:33

标签: csv apache-nifi

我有这个示例csv文件:

school, city, person_id, drivers_license_number
Georgetown, DC, 1, 1111
Vanderbilt, Nashville, 2, 2222
Ole Miss, Oxford, 3, 3333
Penn State, University Park, 4, 4444
NYU, New York City, 5, 5555
Georgetown, DC, 6, 6666
Georgetown, DC, 7, 7777
NYU, New York City, 8, 8888
Ole Miss, Oxford, 9, 9999
Vanderbilt, Nashville, 10, 1010
Penn State, University Park, 11, 1212

TL / DR,我想将此csv通过NiFi路由,并通过csv列保存到单独的school文件中,例如,所有三个Georgetown条目都已保存与列标题合并为一个文件。

我知道我的Q与thisthisthis类似。

到目前为止,我的设置是

enter image description here

我使用GetFile连接到我的目录,并且在PartitionRecord上配置了/school

enter image description here

我想我在这里错了:

enter image description here

我已经这样配置ExtractText

enter image description here

最后一步,PutFile仅将所有内容保存回相同的.txt文件中,但按school分组。我不确定如何根据学校更改文件名或如何将它们路由到自己的文件中。

1 个答案:

答案 0 :(得分:3)

您不应具有SplitText或ExtractText,从PartitionRecord出来的流文件已经按学校进行了分组,每个学校一个流文件。在PartitionRecord和PutFile之间放置一个UpdateAttribute处理器,并设置filename = $ {school}以将文件名更改为学校名称。