【问题标题】:How to convert InfluxDB Line Protocol to Parquet in NiFi如何在 NiFi 中将 InfluxDB 线路协议转换为 Parquet
【发布时间】:2019-12-04 22:04:01
【问题描述】:

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

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

另外,我可以使用 Spark 进行转换并编写 Parquet 文件,但我希望尽可能在 NiFi 中完成所有工作,特别是因为我还没有找到很多资源可以在 Spark 中进行这种转换(我是 Spark 和 NiFi 的新手)。

【问题讨论】:

    标签: apache-kafka apache-nifi parquet influxdb


    【解决方案1】:

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

    【讨论】:

    • 原来更简单的选择是让上游管理员将输出从线路协议切换到 JSON。
    • 是的,这更容易:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-27
    • 1970-01-01
    • 2020-07-05
    • 2023-03-07
    • 2021-10-29
    • 2021-07-23
    相关资源
    最近更新 更多