kafka日志数据保存时间和大小问题

愚思 发表于: 2018-05-24   最后更新时间: 2018-05-24 11:02:11   13,551 游览

我在kafka的服务端配置了日志的两个参数log.retention.bytes=1024和log.segment.bytes=1024,还有一个log.retention.minutes=300,然后我往topic(3个分区)里面发送1000条数据,数据量肯定超过了1KB,然后我去看分区里的日志文件,发现还有存在的xxx.log和xxx.index文件,而且还有两对xxx.log文件存在。我的疑问是,按理说不是应该都删除了吗?应该查询不到log文件了啊,因为大小都超过了1kB了

发表于 2018-05-24
添加评论

补充问题:还有我发现剩下的每个xxx.log的文件大小都是4.0K,所以是超过我设置的1KB的,请大佬有空时帮我解答下。

半兽人 -> 愚思 5年前

log.cleanup.policy,这个你设置的是什么?

愚思 -> 半兽人 5年前

这个没有配置啊,默认是deleted。上面的大小我用du -sh查的,不准,其实剩下的log一个是1001bytes,和93bytes,我只是想测试log.retention.bytes的功能,1024bytes的大小会比log.retention.minutes先发挥作用,所以这种情况下最后保留两个log,应该是log.retention.bytes的原理不是单纯的超过这个大小就删除,是不是还有更复杂的运行原理?我用的是0.10.0版本

花开那年 -> 半兽人 1年前

清理的日志是 消费者 消费数据后的日志记录么?

啊啊 -> 花开那年 1年前

kafka的消息是无状态的,不管你消费和不消费的,到时间了就会清理的。

log.retention.minutes是删除前的保留时间。
看下配置说明:https://www.orchome.com/472

1kb是不是太少了啊,一个分区块也不止啊,至少也得640M。

你的答案

查看kafka相关的其他问题或提一个您自己的问题