kafka在设置retention.ms时没有删除数据

wn9m85ua  于 2021-06-08  发布在  Kafka
关注(0)|答案(1)|浏览(492)

因此,当我寻找一种方法来统计一个主题中的消息时,这个方法很好 kafka-run-class kafka.tools.GetOffsetShell --broker-list broker1:9092,broker2:9092,broker3:9092 --topic rev-dly-upd --time -1 唯一的问题是,当我改变 retention.ms 配置到 retention.ms=1000 ,甚至可以通过运行 kafka-topics --describe --zookeeper zookeeper1:2181 --topic rev-dly-upd . 我可以清楚地看到,配置设置为1000。。。

Topic:rev-dly-upd   PartitionCount:8    ReplicationFactor:3 Configs:retention.ms=1000
    Topic: rev-dly-upd  Partition: 0    Leader: 159 Replicas: 159,96,160    Isr: 159,96,160
    Topic: rev-dly-upd  Partition: 1    Leader: 160 Replicas: 160,159,94    Isr: 94,160,159
    Topic: rev-dly-upd  Partition: 2    Leader: 94  Replicas: 94,160,95 Isr: 95,94,160
    Topic: rev-dly-upd  Partition: 3    Leader: 95  Replicas: 95,94,96  Isr: 95,96,94
    Topic: rev-dly-upd  Partition: 4    Leader: 96  Replicas: 96,95,159 Isr: 95,96,159
    Topic: rev-dly-upd  Partition: 5    Leader: 159 Replicas: 159,160,94    Isr: 159,94,160
    Topic: rev-dly-upd  Partition: 6    Leader: 160 Replicas: 160,94,95 Isr: 94,160,95
    Topic: rev-dly-upd  Partition: 7    Leader: 94  Replicas: 94,95,96  Isr: 95,96,94

但当我跑的时候 kafka-run-class kafka.tools.GetOffsetShell --broker-list broker1:9092,broker2:9092,broker3:9092 --topic rev-dly-upd --time -1 所有的记录都会被退回。原因是什么?

6g8kf2rb

6g8kf2rb1#

基本上我不得不停止使用 kafka-run-class kafka.tools.GetOffsetShell 统计主题中的消息。如果你在谷歌上搜索“如何计算Kafka主题中的消息”,很多帖子和事情会让你认为上面的命令,给出正确的参数,会给你一个消息总数的计数。但是,如果您在主题的生命周期内清除了消息,则不会给出准确的计数。你只需要做一些事情,比如打开一个控制台消费者,输出到文本文件,然后用老式的 wc -l .

相关问题