【问题标题】:Split CSV file in records and save as a csv file format - Apache NIFI在记录中拆分 CSV 文件并保存为 csv 文件格式 - Apache NIFI
【发布时间】:2018-12-12 22:06:57
【问题描述】:

我想做的是以下...

我想把输入文件分成寄存器,把每条记录转换成一个 文件并将所有文件保留在一个目录中。

我的 .csv 文件具有以下结构:

    ERP,J,JACKSON,8388 SOUTH CALIFORNIA ST.,TUCSON,AZ,85708,267-3352,,ALLENTON,MI,48002,810,710-0470,369-98-6555,462-11-4610,1953-05-00,F,
ERP,FRANK,DIETSCH,5064 E METAIRIE AVE.,BRANDSVILLA,MO,65687,252-5592,1176 E THAYER ST.,COLUMBIA,MO,65215,557,291-9571,217-38-5525,129-10-0407,1/13/35,M,

如您所见,它没有标题行。

这是我的流程。

我的问题是,当拆分处理器将我的 csv 分成 400 行的流时,它没有保存在我的输出目录中。

第一次使用NIFI,抱歉。

【问题讨论】:

    标签: apache csv apache-nifi


    【解决方案1】:

    确保您的RecordReader controller service 配置正确(分隔符..等)以读取传入的流文件。

    • 将每个拆分值记录为 1

    您需要在 PutFile 处理器之前使用 UpdateAttribute 处理器将文件名更改为唯一值(如 UUID)除非如果您已将 PutFile 处理器 冲突解决策略 配置为 Ignore

    • 更改文件名背后的原因是 SplitRecord 处理器将为所有拆分的流文件使用same filename

    流程:

    我尝试了您的案例,流程按预期工作,使用this 模板作为参考,upload 用于您的 NiFi 实例,根据您的要求进行更改。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-05-21
      • 2020-07-19
      • 2020-03-22
      • 2018-11-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多