如何编码将数据永久存储在Kafka中?

时间:2018-06-14 06:59:31

标签: apache-kafka kafka-producer-api

我已阅读文档,但仍无法确定插入命令的位置,以便我的主题可以永久存储日志?

2 个答案:

答案 0 :(得分:2)

log.retention.bytes-1这样的属性可以控制这些日志的保留时间。您可以将这两个属性都设置为{{1}}以永久保留日志。

答案 1 :(得分:2)

正如@ pulkit-singhal所说,您可以将保留期间配置为server.properties中的服务器默认值 - 有关详细信息,请参阅reference doc。您还可以使用kafka-topics.sh为每个主题设置它。

您还应该了解Log Compaction的概念,这是实现无限保留的另一种方式,并且是常用的。这为您提供了一种方法来保留每个给定的最新 。通过设置log.cleanup.policy=compact

启用日志压缩

您使用(-1作为时间和尺寸保留政策或日志压缩)取决于您的使用案例。