是否可以在没有 HDFS 的情况下使用 Spark Structured Streaming?

时间:2021-05-07 09:40:37

标签: spark-structured-streaming

我多次使用 HDFS 和 Kafka,我注意到 Kafka 比 HDFS 更可靠。 所以现在使用 Spark-structured-streaming ,我很惊讶检查点仅适用于 HDFS。 使用 Kafka 进行校验会更快更可靠。 那么是否可以在没有 HDFS 的情况下使用 Spark 结构化流媒体? 我们必须仅将 HDFS 用于 Kafka 中的流数据,这似乎很奇怪。 或者是否可以告诉 Spark 忘记 ChekpPointing 并在程序中管理它?

火花 2.4.7

谢谢

1 个答案:

答案 0 :(得分:1)

您不限于使用 HDFS 路径作为检查点位置。

根据 Spark Structured Streaming Guide 中的 Recovering from Failures with Checkpointing 部分,路径必须是“与 HDFS 兼容的文件系统”。因此,其他文件系统也可以工作。但是,所有 Executor 都必须有权访问该文件系统。例如,在集群中的 Edge 节点上选择本地文件系统可能在本地模式下工作,但是,在集群模式下这可能会导致问题。

此外,使用 Spark Structured Streaming 也不可能让 Kafka 自己处理偏移位置。我在 How to manually set group.id and commit kafka offsets in spark structured streaming? 的回答中更深入地解释了这一点。