面试精选Java技术升华

kafka如何从头消费历史数据

2021-05-17  本文已影响0人  不怕天黑_0819

消费者要从头开始消费某个topic的全量数据,需要满足2个条件(spring-kafka):

(1)使用一个全新的"group.id"(就是之前没有被任何消费者使用过); (2)指定"auto.offset.reset"参数的值为earliest;

注意:从kafka-0.9版本及以后,kafka的消费者组和offset信息就不存zookeeper了,而是存到broker服务器上,所以,如果你为某个消费者指定了一个消费者组名称(group.id),那么,一旦这个消费者启动,这个消费者组名和它要消费的那个topic的offset信息就会被记录在broker服务器上。

比如我们为消费者A指定了消费者组(group.id)为fg11,那么可以使用如下命令查看消费者组的消费情况:

bin/kafka-consumer-groups.sh --bootstrap-server 172.17.6.10:9092 --describe --group fg11

在kafka官网可以看到 https://kafka.apache.org/documentation/#oldconsumerconfigs

对于auto.offset.reset的说明,通过在项目中配置选项,同时新建一个groupid就实现了从头开始消费。

auto.offset.reset具体含义:(注意版本不同,配置参数会有所不一致,具体参考官网)

上一篇下一篇

猜你喜欢

热点阅读