【问题标题】:Save each Kafka messages in hdfs using spark streaming使用火花流将每个 Kafka 消息保存在 hdfs 中
【发布时间】:2018-07-27 01:39:43
【问题描述】:
我正在使用火花流进行分析。经过分析,我必须将 kafka 消息保存在 hdfs 中。每个 kafka 消息都是一个 xml 文件。我不能使用rdd.saveAsTextFile,因为它会保存整个rdd。 rdd 的每个元素都是 kafka 消息(xml 文件)。如何使用 spark 将每个 rdd 元素(文件)保存在 hdfs 中。
【问题讨论】:
标签:
apache-spark
apache-kafka
hdfs
spark-streaming
【解决方案1】:
我会以不同的方式解决这个问题。将转换后的数据流回 Kafka,然后使用HDFS connector for Kafka Connect 将数据流式传输到 HDFS。 Kafka Connect 是 Apache Kafka 的一部分。 HDFS 连接器是开源的,可用standalone 或作为Confluent Platform 的一部分。
通过这种方式,您可以将处理与将数据写入 HDFS 分离,从而更易于管理、故障排除和扩展。