spark.readStream 对比 Kafkautils.createDirectStream

spark.readStream vs Kafkautils.createDirectStream

我想知道是否有人知道这两种语法之间的区别是什么?我知道两者都用于从 Kafka 读取数据,但它们有什么区别?

  1. spark.readStream.format("kafka")
  2. KafkaUtils.createDirectStream(__)

它们是不同依赖项的一部分,其中之一。

第一个用于结构化流和 returns 数据帧,被认为是 SparkAPI 的首选

第二个用于 RDD Spark Streaming 操作,其中数据可能与其(结构)没有任何一致性,或者如果您确实希望更直接地访问 Spark[= 的较低级别 ConsumerRecord 对象11=]