如何在 NiFi 中将 InfluxDB 线路协议转换为 Parquet

How to convert InfluxDB Line Protocol to Parquet in NiFi

我有 influxDB 线路协议记录通过 ConsumeKafka 处理器进入 NiFi,然后合并到包含 10,000 条记录的流文件中。现在我想让它们转换为 Parquet 并存储在 HDFS 中,最终目标是为最终用户构建 Impala 表。有没有一种方法可以将 Line Protocol 转换为 PutParquet 处理器可使用的东西,或者有其他方法可以转换为 Parquet 文件?

我确实找到了一个定制的 influxlineprotocolreader 处理器,但是关于如何使用这个处理器的信息很少,也没有示例(我已经找到)所以我不确定它是否适合这个用例.

或者,我可以使用 Spark 进行转换并编写 Parquet 文件,但我希望尽可能在 NiFi 中完成所有操作,尤其是因为我还没有找到很多关于在 Spark 中进行此类转换的资源要么(我是 Spark 和 NiFi 的新手)。

NiFi 中没有开箱即用的东西可以理解 InfluxDB 线路协议。你必须实现一些将其转换为已知格式的东西,如 JSON、Avro 等,然后你可以转到 Parquet,或者如果你实现了 InfluxDbRecordReader,那么你可以将 ConvertRecord 与它和一个 parquet writer 一起使用直接在两者之间。