kafka存储数据量过大,导致磁盘爆满

时间:2020-12-08 23:21:50

问题:

注意到自己负责kafka的某个topic最小的偏移量为0,而最大的偏移量都7亿多了,说明存储在kafka里面的数据没有定时删除,通过登陆到kafka服务器,查看配置文件services.properties,发现log.retention.hours=876000(100年),我猜想配置kafka的人是怕数据丢失,直接保存了所有的数据。

方法:

我这边修改为log.retention.hours=4320(半年,根据实际情况设置),然后重启kafka,就生效了。

(其中,当该配置生效之后,对应topic的最小偏移量也会随之改变,我们程序中,也会保存当前的offset到zookeeper中。如果程序重新启动,我们会直接从zookeeper中读取offset进行消费数据,如果该offset小于该topic最小偏移量,则我们会从最小偏移量开始消费数据。)