如何处理 MongoDB 主分片空间不足?

Posted

技术标签:

【中文标题】如何处理 MongoDB 主分片空间不足?【英文标题】:how to deal with MongoDB primary shard running out of space? 【发布时间】:2014-03-25 06:50:22 【问题描述】:

我最近一直在使用 mongo 的分片,但是我有一个问题:

假设我们有一个包含十亿多文档的集合,那么为了克服磁盘空间的不足,我们应该对数据进行分片,对吗?

所以问题来了:因为我的分片都不包含足够的磁盘空间来存储整个数据集,我如何选择其中一个作为主分片?众所周知,主分片会维护一个完整的数据集,即使部分数据在其他分片上?

谁能给我一些建议?提前谢谢;-)

【问题讨论】:

【参考方案1】:

主分片不保存完整的数据集,它保存所有未分片的集合数据。对于您要分片的集合,数据应该在所有分片之间保持平衡(除非您的分片键选择很差)。

如果您的主分片由于未分片的数据而空间不足,您有两种选择:您要么将那些 [未分片] 集合也分片,要么获得更大的磁盘。

【讨论】:

以上是关于如何处理 MongoDB 主分片空间不足?的主要内容,如果未能解决你的问题,请参考以下文章

VMware虚拟机里提示虚拟内存过小,如何处理?

linux 硬盘满了如何处理

full gc太过频繁该如何处理

若linux 的分区硬盘满,如何处理?

Auth0 - 为啥范围不足以及如何处理?

iPhone - 如何处理内存不足的情况