kafka leader-epoch-checkpoint 文件结构

引言

kafka的每个partition下都有以下5类文件

# 其中数字123456只是举个栗子
00000000000000123456.index
00000000000000123456.log
00000000000000123456.snapshot
00000000000000123456.timeindex
leader-epoch-checkpoint

下面根据我的查阅资料和理解,总结以下各个文件结构。其中index、log、timeindex文件是二进制文本,可以使用如下kafka工具查看内容。checkpoint文件可以直接查看

bin/kafka-run-class.sh kafka.tools.DumpLogSegments --files 00000000000000000000.log

index

TODO

log

TODO

snapshot

snapshot:是kafka对幂等型或者事务型producer所生成的快照文件。

#snapshot打开是如下字符,未知具体含义
HgK

timeindex

TODO

leader-epoch-checkpoint

0 #版本号
1 #下面的记录行数
29 2485991681 #leader epoch ,可以看到有两位值(epoch,offset)。
## epoch表示leader的版本号,从0开始,当leader变更过1次时epoch就会+1
## offset则对应于该epoch版本的leader写入第一条消息的位移。可以理解为用户可以消费到的最早数据位移。与kafka.tools.GetOffsetShell --time -2获取到的值是一致的。

文章参考及引用

  1. kafka Log存储解析以及索引机制
  2. Kafka水位(high watermark)与leader epoch的讨论
  3. 尝试深入理解Kafka的工作特性
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值