Sparkstreaming+kafka direct模式:

将kafka看成存储数据的一方,sparkstreaming处理数据主动去拿数据,不需要一个task一直被占用接受数据

sparkStreaming+kafka的direct模式的并行度:生成的dstream中的rdd的并行度与读取的kafka的topic的partition个数一致。Direct模式相对于receiver模式来说简化了并行度。

Direct模式没有使用zookeeper来维护消费者偏移量,使用的是spark来管理消费者的offset。默认将消费者offset存储在内存中,如果设置了checkpoint,那么在checkpoint中也有一份消费者offset。

Receiver模式和direct模式的区别:

简化并行度

Receiver是zookeeper来管理

Direct是自己管理,没有任何zookeeper的信息

Receiver是高级,direct是低级的。

直接读取kafaka中的数据,将kafka看成存储消息的一方

使用spark自己来管理消费者offset,默认存在内存中,如果设置checkpoint,那么在checkpoint中也有一份备份offset

如何从checkpoint中恢复消费者offset

恢复过程中,把旧的逻辑也恢复过来了,无法加载新的逻辑

采用了读取kafka低级API来实现消费,可以自己来维护offset。

SparkStreaming+kafak的direct模式逻辑分析(图片展示+文字说明)

SparkStreaming+kafak的direct模式逻辑分析(图片展示+文字说明)

相关文章:

  • 2021-07-08
  • 2021-07-04
  • 2021-07-16
  • 2021-12-05
  • 2021-11-07
  • 2021-06-09
  • 2021-06-20
猜你喜欢
  • 2021-04-04
  • 2021-05-04
  • 2021-11-22
  • 2022-01-07
  • 2021-08-02
  • 2021-07-21
  • 2021-11-22
相关资源
相似解决方案