MongoDB 限制存储大小吗?

30

MongoDB在64位平台上的存储大小限制是多少? MongoDB能否在一个实例(节点)中存储500-900GB的数据?您在MongoDB中存储的最大数据量是多少,您有什么经验分享?


我们正在使用PSA故障转移处理12TB的数据,备份和恢复工作非常繁琐,但系统运行良好。 - JDPeckham
3个回答

28

11

以下是根据MongoDB 3.0 MMAPv1存储引擎限制,列出了不同操作系统上的存储限制。

MMAPv1存储引擎将每个数据库的数据文件限制为不超过16000个。这意味着单个MMAPv1数据库的最大大小为32TB。设置 storage.mmapv1.smallFiles选项可以将此限制降低到8TB。

使用MMAPv1存储引擎,单个mongod实例无法管理超出底层操作系统提供的最大虚拟内存地址空间的数据集。

                            Virtual Memory Limitations

Operating System           Journaled                Not Journaled

   Linux                 64 terabytes               128 terabytes

Windows Server 2012 R2
and Windows 8.1          64 terabytes               128 terabytes

Windows (otherwise)       4 terabytes                8 terabytes

参考文献: MongoDB 数据库限制.

注意: WiredTiger 存储引擎不受此限制。

在单个节点上拥有超过2GB的另一种方法是运行多个 mongod 进程。因此,分片是一种选择或在进程之间进行一些手动分区。

希望这可以帮助您。


我很好奇。"每个数据库"到底是什么意思?单个服务器上的安装是否被视为一个数据库,还是整个由多个分片组成的集群?(可能不是后者-对吧?否则,mongo-cluster的绝对最大值将达到32TB,那将是荒谬的) - skofgar
在这次讨论之后,我和@skofgar有同样的疑问。我很想知道Mongodb的限制。如果有人遇到过一个节点计算示例-集群与C个节点和Y内存,然后存储将是C0.8Y之类的,请分享一个链接。 - V.B

7

在64位系统上,1TB的存储空间远未达到Mongo的容量上限。但是,Mongo会将索引存储在内存中,因此流畅的体验取决于您的索引大小和可用内存量。如果您的系统足够强大,则不会有问题。


1
在我们的情况下,我们正在处理从eBay某些市场检索的多年历史数据。在我们的情况下,1TB绝对是我们关注的问题-不要太快排除这么大的数字。但对于日常使用,你是正确的-1TB相当极端。 - Joshua Burns
1
@Joshua Burns,我认为你误解了答案。我相信@Donnie H的意思是1 TB的数据并没有接近MongoDB的最大容量,而不是1 TB是永远不会达到的数据量。 - ceejayoz

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接