我对Kafka Topic清理策略及其与log.retention的交互有疑问。
例如,如果我将cleanup.policy设置为compact,那么压缩将仅在主题的保留时间之后开始,或者保留时间对压缩没有影响?
问题的第二部分,如果我一起使用压缩,则删除,并且我有log.retention可以说1天,话题一直压缩,但是话题的内容会在一天后被删除吗?还是一天后实现压缩和删除?
寻求答案...
答案 0 :(得分:0)
可以删除或压缩日志段,或同时压缩两者,以管理其大小。主题级配置cleanup.policy
确定了管理主题日志段的方式。
通过压缩清除日志
如果将主题级别的配置cleanup.policy
设置为compact
,则日志清理器会在后台定期压缩主题日志。
在紧凑的主题中,日志仅需要包含每个键的最新消息,而较早的消息可以被丢弃。
无需将log.retention设置为-1或任何其他值。您的主题将被压缩,并且旧消息绝不会被删除(按照压缩规则)。
请注意,只能压缩非活动文件段;活动段永远不会被压缩。
同时使用两者进行日志清除
您可以同时为delete
配置指定compact
和cleanup.policy
值。在这种情况下,将压缩日志,但是清除过程也将遵循retention time
或size limit
设置。
我建议您通过以下链接
https://ibm.github.io/event-streams/installing/capacity-planning/