【发布时间】:2021-02-11 22:24:32
【问题描述】:
我正在测试一个 Kafka 生产者应用程序,并注意到 Kafka 日志的磁盘使用情况有些奇怪。当查看某个分区的日志目录的总大小时,当应用程序正在写入 Kafka 时,我看到了:
$ ls -l --block-size=kB kafka-logs/mytopic-0
total 52311kB
-rw-rw-r-- 1 app-data app-data 10486kB Oct 29 12:45 00000000000000000000.index
-rw-rw-r-- 1 app-data app-data 46505kB Oct 29 12:45 00000000000000000000.log
-rw-rw-r-- 1 app-data app-data 10486kB Oct 29 12:45 00000000000000000000.timeindex
-rw-rw-r-- 1 app-data app-data 1kB Oct 29 11:55 leader-epoch-checkpoint
然后我停止我的应用程序,几分钟后我重复上面的命令,得到这个:
$ ls -l --block-size=kB kafka-logs/mytopic-0
total 46519kB
-rw-rw-r-- 1 app-data app-data 10486kB Oct 29 12:45 00000000000000000000.index
-rw-rw-r-- 1 app-data app-data 46505kB Oct 29 12:45 00000000000000000000.log
-rw-rw-r-- 1 app-data app-data 10486kB Oct 29 12:45 00000000000000000000.timeindex
-rw-rw-r-- 1 app-data app-data 1kB Oct 29 11:55 leader-epoch-checkpoint
问题:为什么ls 总数不代表该目录中所有文件的大小总和?为什么在停止生产者应用程序后几分钟总数会减少,即使目录中的所有文件都保持相同大小?
【问题讨论】:
标签: linux apache-kafka ls kafka-partition