apache-kafka - 当我使用基于时间的保留策略时,如果将 'log.cleanup.policy' 设置为 'delete' 和 'compact',数据日志会发生什么

标签 apache-kafka

我试图理解,如果我在使用时间时将“log.cleanup.policy”设置为同时具有“删除”和“压缩”,那么压缩和日志清理是如何发生的基于保留策略。

假设我们的保留期为 7 天(默认),在这 7 天内我的数据流低于模式,请帮助我了解 7 天后的情况。

enter image description here

最佳答案

当您同时使用 compact 和 delete 作为 log.cleanup.policy 时。日志将在后台定期压缩,以至少保留单个主题分区数据日志中每个消息键的最后一个已知值。可以使用此配置参数配置压缩:

log.cleaner.min.compaction.lag.ms:消息在日志中保持未压缩状态的最短时间

log.cleaner.max.compaction.lag.ms:消息在日志中保持不符合压缩条件的最长时间

正如你已经说过的,对于你的例子:

压缩前:

enter image description here

压缩后:

enter image description here

log.retention.hours 时间段后,日志也会被删除,而不考虑它是否被压缩。根据此参数检查日志保留:

log.retention.check.interval.ms:日志清理器检查是否有任何日志符合删除条件的频率(以毫秒为单位)(默认为 5 分钟)

关于apache-kafka - 当我使用基于时间的保留策略时,如果将 'log.cleanup.policy' 设置为 'delete' 和 'compact',数据日志会发生什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59830588/

相关文章:

apache-kafka - Kafka Confluent HTTP 接收器连接器的开源替代方案

docker - Spring Boot 和 Kafka,生产者抛出异常, key 为 ='null'

scala - 测试kafka和flink集成流程

node.js - 有没有办法将融合模式注册表与 kafka-node 模块一起使用?

Avro 与 Protobuf 的性能指标

hdfs - 如何在 HDP 2.4 中设置和使用 Kafka-Connect-HDFS

java - Kafka 流应用程序将读取与写入分开

unit-testing - 卡夫卡 : Are there are examples on how to use Mockito for unit testing Kafka?

java - Kafka 0.11.0.0 在重启时不断重置偏移量

java - 暂停具有多个消费者的kafka主题