Apache NiFi:识别包含特殊字符的 csv 记录
Apache NiFi: Identifying csv records containing special characters
使用 Apache NiFi 我需要过滤掉 csv 中具有一组特殊字符的记录。
例如,特殊字符集是"FFF"。我的 csv 是
name,age,city
John,23,New York
FFF,45,London
Himsara,18,Adelaide
然后第二条记录必须从csv中取出并放入另一个csv中。此外,即使 "FFF" 在城市或年龄列中,也必须删除整个记录。
请建议我实现此目标所需的处理器。如果您可以列出需要更改的配置,那也将非常有帮助。
使用 QueryRecord processor in nifi and define Record Reader/Writer Avro 模式读取传入的流文件。
然后将新的 属性 添加到 QueryRecord
处理器作为 (Apache calcite sql)
select * from FLOWFILE where name !="FFF"
现在使用 QueryRecord 处理器新添加的关系进行进一步处理,NiFi 将生成名称不等于 'FFF'
的流文件。
作为替代方案,您可以使用 RouteText 处理器。它将根据条件拆分流文件。包含FFF的行将路由到匹配关系,其他行将路由到不匹配关系。
RouteText 处理器设置:
使用 Apache NiFi 我需要过滤掉 csv 中具有一组特殊字符的记录。
例如,特殊字符集是"FFF"。我的 csv 是
name,age,city
John,23,New York
FFF,45,London
Himsara,18,Adelaide
然后第二条记录必须从csv中取出并放入另一个csv中。此外,即使 "FFF" 在城市或年龄列中,也必须删除整个记录。
请建议我实现此目标所需的处理器。如果您可以列出需要更改的配置,那也将非常有帮助。
使用 QueryRecord processor in nifi and define Record Reader/Writer Avro 模式读取传入的流文件。
然后将新的 属性 添加到 QueryRecord
处理器作为 (Apache calcite sql)
select * from FLOWFILE where name !="FFF"
现在使用 QueryRecord 处理器新添加的关系进行进一步处理,NiFi 将生成名称不等于 'FFF'
的流文件。
作为替代方案,您可以使用 RouteText 处理器。它将根据条件拆分流文件。包含FFF的行将路由到匹配关系,其他行将路由到不匹配关系。
RouteText 处理器设置: