kafka消息回溯

kafka支持两种方式回溯。一种是基于消息偏移量回溯,一种是基于时间点的消息回溯。


基于消息偏移量回溯

在kafka的每个分区中,每条消息都有一个唯一的offset值 ,即消息偏移量,用来表示消息在partition分区中的位置。消费者每次消费了消息,都会把消费的此条消息的offset提交到broker(消息节点),用于记录消费到分区中的位置,下条消息从这个位置之后开始消费。所以基于消息偏移量回溯很简单,只需要重置offset,然后消费者会从该offset之后开始消费


基于时间点的消息回溯

要想讲清楚kafka基于时间点的消息回溯的原理,得先从kafka存储消息的文件格式开始讲。

kafka存储消息是以日志的形式存储的,每一个partition都对应一个日志,但是日志不是一个文件,是多个文件组成的。日志文件都存储在一个文件夹里面的,文件格式为: topic-0 。

其中topic是kafka对应的主题名称、0是partition所在的分区号。文件夹里面存储的是什么文件呢,日志分段文件、偏移量索引文件、时间戳索引文件。

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值