我们有一个带有4个分片的MongoDB集群。我们的主分片磁盘空间为700GB,根据db.stats(),分片正在使用〜530GB。当检查df -h时,磁盘使用率为99%(9.5 GB可用空间),我想这意味着其余所有都是Mongo预先分配的数据文件。我在几个集合上运行紧凑,磁盘空间减少到3.5GB(?)
我们将运行一个流程,该流程将生成约140GB的额外数据(每个分片35GB)。我们是否应该担心磁盘空间不足?
提前致谢。
compact
完全不会减少磁盘使用,实际上甚至可能导致额外的文件分配。为了减少磁盘使用,您可以使用repairDatabase
命令或使用修复选项启动mongo。但是,这将需要磁盘上的其他可用空间。
如果您执行了许多文档删除操作或某些迫使文档移动的操作,则可能是上述情况。在这种情况下,您的数据库将进行高度碎片整理。compact
命令可以帮助您减少碎片整理,您将有更多空间用于存储新记录,但是同样,它也不会将任何空间回收回OS。
对您来说最好的选择是尝试弄清为什么会有这样的碎片整理水平。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句