当前位置: 首页 > >

mongodb 库数量限制_Mongodb数据库最大支持多大数据量

发布时间:

限制


MongoDB通常适用于64位操作系统,32位系统只能寻址4GB内存,意味着数据集包含元数据和存储达到4GB,Mongodb就无法存储额外的数据了,强烈建议32位系统使用Mongodb可以自己测试使用,生产环境一地使用64位操作系统。


最大文档大小有助于确保单个文档不会使用过多的RAM或在传输过程中占用过多的带宽。要存储大于最大大小的文档,MongoDB提供了GridFS API。


MongoDB支持BSON文档嵌套的级别不超过100。


数据库命名限制


由于数据库名称在MongoDB中不区分大小写,因此数据库名称不能仅因字符的大小写而不同。


对于在Windows上运行的MongoDB部署,数据库名称不能包含以下任何字符:


/. "$*<>:|?


对于在Unix和Linux系统上运行的MongoDB部署,数据库名称不能包含以下任何字符:


/. "$


数据库名称也不能包含空字符。数据库名称不能为空,并且必须少于64个字符。


集合命名限制


集合名称应以下划线或字母字符开头,并且不能:


包含$。


是一个空字符串(例如"")。


包含空字符。


以system.前缀开头。(保留供内部使用)


集合名称空间的最大长度为120个字节,其中包括数据库名称,点(.)分隔符和集合名称(即.)


字段命名限制


字段名称不能包含null字符。


顶级字段名称不能以美元符号($)字符开头。


其他情况,从MongoDB 3.6开始,服务器允许存储包含点(即.)和美元符号(即$)的字段名称。


mognodb 不支持重复的字段名称,即使程序插入成功,没有抛出异常,驱动程序会导致在插入之前默认删除重复值。


命名空间


集合名称空间的最大长度为120个字节,其中包括数据库名称,点(.)分隔符和集合名称(即.)


在版本3.0中更改。


对于MMAPv1,名称空间的数量限于名称空间文件的大小除以628,一个16 MB的名称空间文件可以支持大约24,000个名称空间。每个集合和索引都是一个名称空间。


WiredTiger存储引擎是不是受到这个限制。


这也是为什么在MongoDB4.2从4.2版开始,删除不推荐使用的MMAPv1存储引擎的原因。


副本集


在Mongodb3.0中副本集成员最最多支持50个,也就是说副本集做大支持50个节点,副本集每个节点数据支持32T,副本集每个实例建议数据不要超过4T,数据量大备份恢复时间会很长。


存储限制


我们通常分片会使用默认的chunk大小为64M,如果我们的分片key (片键)values值是512字节,分片节点支持最大32768个也就是最大支持数据量为32768TB。


一个片键大小不能超过512字节。



原文:https://blog.51cto.com/jiachen/2485881



友情链接: