You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

当Kafka主题保留时间大于log.roll.ms时的处理逻辑及查询问题

Kafka主题保留时间大于broker log.roll.ms时的机制与查询说明

一、数据删除机制运作逻辑

  • Kafka的日志删除是基于分段文件(log segment) 执行的,不会针对单条消息单独处理。当主题设置的retention.ms(保留时间)大于broker级别的log.roll.ms时:
    1. 日志分段会严格按照log.roll.ms的时间间隔(或同时满足文件大小阈值log.segment.bytes)滚动生成新的分段文件;
    2. 后台删除线程只会判断整个分段文件的最后一条消息的时间戳:当该时间戳早于「当前时间 - 主题retention.ms」时,这个分段才会被标记为待删除,随后被清理;
    3. 和你之前遇到的「retention.ms < log.roll.ms」场景相反:反向场景下,分段会按时滚动,但只要分段里还有消息没到主题保留期,整个分段就不会被删除。

二、AKHQ的数据查询可用性

  • 只要目标分段文件还未被Kafka后台线程彻底清理,AKHQ就能正常查询到该分段内的所有消息;
  • 只有当分段被完全删除后,对应的数据才会从AKHQ的查询结果中消失。

内容的提问来源于stack exchange,提问作者Xli

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 10:22:33