介绍
kafka在0.10.x版本后默认将消费者组的位移提交到自带的topic__consumer_offsets
里面,当有消费者第一次消费kafka数据时就会自动创建,它的副本数不受集群配置的topic副本数限制,分区数默认50(可以配置),默认压缩策略为compact。
结构
key
version
: 版本字段,不同kafka版本的version不同group
: 对应消费者组的groupid,这条消息要发送到__consumer_offset
的哪个分区,是由这个字段决定的topic
: 主题名称partition
: 主题的分区
value
- version : 版本字段,不同kafka版本的version不同
- offset : 这个groupid消费这个topic到哪个位置了
- metadata : 自定义元数据信息
- commit_timestamp : 提交到kafka的时间
- expire_timestamp : 过期时间, 当数据过期时会有一个定时任务去清理过期的消息
计算消息提交到__consumer_offsets
哪个分区的算法
java
Math.abs("test".hashCode()) % 50;//4