gpt4 book ai didi

apache-kafka - 卡夫卡 : deleting messages from topics with retention "compact"

转载 作者:行者123 更新时间:2023-12-04 17:57:36 25 4
gpt4 key购买 nike

我正在尝试使用 Java 在 Kafka 中的压缩主题上实现一个最小的工作示例。我的压缩运行良好,但是当我按照 kafka 文档中的描述使用键和空值编写消息时,看不到删除发生。

使用的库版本:kafka-clients-0.10.0.0.jar

这是重现该行为的 Java 类的要点: https://gist.github.com/anonymous/f78184eaeec3ee82b15182aec24a432a

此外,通过查阅文档,我在主题级别使用了以下配置以尽快启动压缩:

min.cleanable.dirty.ratio=0.01
cleanup.policy=compact
segment.ms=100
delete.retention.ms=100

在 server.properties 方面,只是为了确定:

log.retention.check.interval.ms=100
log.cleaner.delete.retention.ms=100
log.cleaner.enable=true
log.cleaner.min.cleanable.ratio=0.01

运行时,此类显示压缩有效 - 只有一条消息在主题上具有相同的键。但是,我仍然看到带有“null”值的消息,我认为应该将其删除。

我可以看到更清洁的线程正在运行,产生如下输出:[2016-08-11 12:30:21,032] INFO Cleaner 0:将 log compaction-test-0 中的第 15 段(最后修改时间为 2016 年 8 月 11 日星期四 12:29:52 CEST)清理为 0,保留删除。 (kafka.log.LogCleaner)

有谁知道为什么它是“保留删除”?我是否缺少任何相关的配置选项?我是否以正确的方式编写了“null”?

非常感谢任何想法。提前致谢!

更新:在调查了有用的评论后,我升级到 0.10.0.1 并在清理器日志中发现了以下输出:

[2016-08-15 12:44:57,412] INFO Cleaner 0: Cleaning log compaction-test-0 (discarding tombstones prior to Mon Aug 15 12:44:40 CEST 2016)... (kafka.log.LogCleaner)
[2016-08-15 12:44:57,412] INFO Cleaner 0: Cleaning segment 0 in log compaction-test-0 (last modified Mon Aug 15 12:44:41 CEST 2016) into 0, retaining deletes. (kafka.log.LogCleaner)
[2016-08-15 12:44:57,412] INFO Cleaner 0: Cleaning segment 15 in log compaction-test-0 (last modified Mon Aug 15 12:44:41 CEST 2016) into 0, retaining deletes. (kafka.log.LogCleaner)
[2016-08-15 12:44:57,413] INFO Cleaner 0: Cleaning segment 16 in log compaction-test-0 (last modified Mon Aug 15 12:44:56 CEST 2016) into 0, retaining deletes. (kafka.log.LogCleaner)

因为“保留删除”是由 val retainDeletes = old.lastModified > deleteHorizo​​nMs并且相关段的最后修改日期似乎总是略晚于删除范围,在我的最小示例中不会发生删除。

只是想知道现在如何调整设置或测试来处理这个...

最佳答案

此问题已在 0.10.1 中修复。看到这个 JIRA:https://issues.apache.org/jira/browse/KAFKA-4015

关于apache-kafka - 卡夫卡 : deleting messages from topics with retention "compact",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38894156/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com