zookeeper 跟kafka 之间的具体存储结构

·  阅读 937

zookeeper 跟kafka 之间的具体存储结构

**

zookeeper到底存储了kafka的什么东西?

1、kafka依赖zookeeper对集群进行管理,zookeeper存储kafka 各个sever(broker)的信息,当kafka各个节点的信息发生改变能够及时进行通知处理。

2、kafka的topic信息是存储在zookeeper上的,zookeeper上只存储topic的配置信息

在这里插入图片描述

这里创建了一个名为second的topic,有2个分区,3个副本,两个分区分别对应存储的broker id,并且可以看到对应分区的leader。

topic具体数据是存储在logs下面的.log文件

3、kafka 的消费者消费过程需要依赖zookeeper

旧版的kafka整个消费者都是依赖于zookeeper的,zookeeper上存储着kafka对应数据的offset

在这里插入图片描述

打了马赛克的地方key值是对应的消费组的id名称,get对应的topic下面的某个分区获得的数据则表示已经消费了多少个数据,表示的是消费的长度,也表示消费到的offsets。
新版的kafka在使用zookeeper存储消费者的时候会提示

在这里插入图片描述

这表示用zookeeper做消费的存储结构已经过时了,新版的使用的是kafka自带的存储结构体bootstrap-server,若使用的是bootstrap-server则zookeeper上不会有消费者存储的offsets信息。这就减少了kafka消费数据的时候需要去连zookeeper获取offsets消耗的时间,加快了消费过程。
注:不管是旧版还是新版的kafka,topic都是存储在zookeeper上的。
分类:
阅读
标签:
收藏成功!
已添加到「」, 点击更改