我有一个名为retention的Kafka主题,下面是与保留相关的服务器配置:
log.retention.hours=168
log.segment.bytes=1073741824
log.retention.check.interval.ms=3600000 (~ 1 hour)
log.cleaner.enable=true下面是主题特定的配置:
retention.ms=2592000000,retention.bytes=3298534883328 其中retention.ms ~ 30d和retention.bytes =~3.29TB
最近(2019年1月14日),我使用以下命令配置了retention.ms和retention.bytes:
./bin/kafka-topics.sh --zookeeper localhost:2181 --alter --topic retentions --config retention.bytes=219902325555在这里,retntion.bytes的配置似乎在工作,而retention.ms似乎不起作用。以下是我可以收集到的证据:
cd log_dir/retentions-0/
ls -lrt 00000000000000000000.*
-rw-r--r-- 1 root root 294387381 Nov 26 22:37 00000000000000000000.log
-rw-r--r-- 1 root root 3912 Jan 14 18:06 00000000000000000000.index
-rw-r--r-- 1 root root 5868 Jan 14 18:06 00000000000000000000.timeindex如果我们看看老段的日志,这是近2个月的历史。
谁能知道这两种配置中哪一种将以优先级生效,或者,无论哪种配置超过配置的阈值,两者都可以工作。
在我的假设中,这两种配置应该一起工作。如果不是这样的话请告诉我。
发布于 2019-01-17 19:52:37
两者一起工作。
卡夫卡:权威指南书
如果您为
log.retention.bytes和log.retention.ms指定了一个值.当满足任何条件时,都可以删除消息。
https://stackoverflow.com/questions/54236766
复制相似问题