我有这个示例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
条目都已保存与列标题合并为一个文件。
到目前为止,我的设置是
我使用GetFile
连接到我的目录,并且在PartitionRecord
上配置了/school
:
我想我在这里错了:
我已经这样配置ExtractText
:
最后一步,PutFile
仅将所有内容保存回相同的.txt
文件中,但按school
分组。我不确定如何根据学校更改文件名或如何将它们路由到自己的文件中。
答案 0 :(得分:3)
您不应具有SplitText或ExtractText,从PartitionRecord出来的流文件已经按学校进行了分组,每个学校一个流文件。在PartitionRecord和PutFile之间放置一个UpdateAttribute处理器,并设置filename = $ {school}以将文件名更改为学校名称。