kafka文件存储形式
每个partition为一个目录,partition命名的规则是topic的名称加上一个序号,序号从0开始。
例如: topiclog-0 topiclog-1
每个partition下都会有一个的segment段,segment可以设置默认500M。
kafka保证顺序性必须partition=1,否则就是局部有序全局无序。
Segment文件命名的规则:
partition全局的第一个segment从0(20个0)开始,后续的每一个segment文件名是上一个segment文件中最后一条消息的offset值。
这样非常好定位下一个消息应该从哪里消费。
1.找到两个文件中间的值包含当前offset。
2.根据这个文件的segment-index找到对应的segment-data.
网友评论