Kafka主题配置中local.retention.bytes参数是什么?
解析Kafka的
local.retention.bytes与local.retention.ms参数 参数背景
Conduktor Console近期新增了两个主题配置参数:local.retention.bytes 和 local.retention.ms。
官方定义(译自Confluent官方文档)
local.retention.bytes:单个Broker上某分区的本地日志段允许增长到的最大容量,超过该值时将自动删除旧日志段。默认值为-2,表示继承retention.bytes的配置。有效值必须始终小于或等于retention.bytes。
local.retention.ms:对应时间维度的本地日志保留限制,定义单个Broker上某分区的本地日志段可保留的最长时长,超时后将删除旧日志段。默认值同样为-2,继承retention.ms的配置,有效值需小于或等于retention.ms。
核心概念:本地日志段(Local Log Segment)
Kafka主题的每个分区会在集群多个Broker上存储副本。本地日志段指的是单台Broker节点本地磁盘上存储的某分区副本的全部日志段——也就是该Broker自身保存的那一份分区副本日志。
你的猜测是准确的:这两个参数的作用就是限制单台Broker上单个分区副本可占用的最大磁盘空间(local.retention.bytes)和最长保留时间(local.retention.ms),是针对单节点的精细化配置,而非集群层面的全局限制。
配置逻辑说明
- 这两个参数是对全局/主题级
retention.bytes/retention.ms的补充:当集群内部分Broker磁盘资源有限时,可通过它们单独降低该节点上副本的日志保留量/时长,无需修改全局保留策略。 - 由于本地保留的日志范围不能超出全局配置的范围,因此要求这两个参数的有效值必须小于等于对应的全局保留参数。
内容的提问来源于stack exchange,提问作者user2138149
相关产品推荐
相关产品推荐

