【kafka】kafka offset 的存储 (存储zookeeper 与 存储 kafka)

在这里插入图片描述

1.概述

offset即消费消息的偏移值,记录了kafka每个consumergroup的下一个需要读取消费位置,保障其消息的消费可靠性。

2.旧版本offset保存

kafka0.8.1.1以前,offset保存在zk中,存放在/consumers节点下。但是由于频繁访问zk,zk需要一个一个节点更新offset,不能批量或分组更新,导致offset更新成了瓶颈。后续两个过渡版本增加了参数“offsets.storage”,该参数可配置为“zookeeper”或“kafka”分别表示offset的保持位置在zk或是broker,默认保留在zk,

0.9版本以后offset就默认保存在broker下。若配置的“kafka”,当设置了“dual.commit.enabled”参数时,offset仍然可以提交到zk
zk中保存offset结构为:

/consumers/[group_id]/offsets/[topic]/[broker_id-partition_id] --> offset_counter_value

注意:

Guess you like

Origin blog.csdn.net/qq_21383435/article/details/121184702