在nifi中将JSON转换为CSV

时间:2018-03-07 06:50:33

标签: json csv apache-nifi hortonworks-dataflow

我想在nifi中将JSON文件转换为CSV。我们可以用Python和其他编程语言实现这一点,并且有多篇文章。我有多个JSON文件,每个文件都有不同的模式(一个特定的文件只有一个模式)。我可以看到有模板可以将CSV转换为JSON和其他转换。但我没有看到任何将JSON数据转换为CSV的模板。我已经阅读了文章https://community.hortonworks.com/articles/64069/converting-a-large-json-file-into-csv.html,但是在这里我们正在编写模式。由于我有多个文件,每个文件都有不同的架构,我无法对架构进行硬编码。请给我任何建议。

1 个答案:

答案 0 :(得分:4)

格式之间的转换通常是通过插入适当的记录阅读器和记录编写器,通过ConvertRecord完成的,在本例中是JSON阅读器和CSV编写器。

要使用记录处理器,您需要为数据定义Avro架构并将它们放在架构注册表中,NiFi提供本地处理器。

有很多关于记录内容的示例和帖子,这个幻灯片显示了一个CSV到JSON的示例,但很容易扭转你的场景的情况:

https://www.slideshare.net/BryanBende/apache-nifi-record-processing

这篇文章还有其他一些信息: https://bryanbende.com/development/2017/06/20/apache-nifi-records-and-schema-registries