Kudu 磁盘使用量虚高

39 阅读1分钟

问题:Kudu 版本为 1.10.0,data目录下有.data文件和.metadata文件,其中.data文件是真正的数据文件,.metadata文件是记录block位置等信息的文件。.metatdata文件不会在运行中合并(append only,只会在重启时合并),因此Kudu集群运行久了就会出现.metadata磁盘占用量比.data文件大很多的情况,使磁盘使用量虚高。

image.png

image.png worker-24和worker-17分别是运行了两个月的Kudu Tserver和刚刚重启过的Kudu Tserver,两张图.metadata和.data的磁盘使用和比例非常明显。worker-24中.metadata几乎是.data的5倍。该集群tablet数量较多,单个Tserver超过2000个tablet,也就意味着 block 多,这也是这个现象更加明显的原因。

解决方法:不升级的话可以定期重启Kudu,强制合并.metadata文件,重启过程可能会很慢(生产环境中30-60分钟);升级的话1.16.0解决了这个问题,运行时合并。

参考issues.apache.org/jira/browse…