MongoDB是否以4MB的块存储文档?

cbm*_*eks 1 mongodb

我读到MongoDB文档的大小限制为4 MB.我还读到,当您插入文档时,MongoDB会添加一些填充,以便在向文档添加内容时,不必移动整个文档并重新编制索引.

所以我想知道,它是否将文件以4MB的块存储在磁盘上?

谢谢

Ada*_*Dev 5

从1.8开始,单个文档现在限制为16MB(之前为4MB).这是一个限制性的限制,因为当您从磁盘读取文档时,整个文档将被读入RAM.所以我认为目的是这个限制是尝试和保护内存/让你考虑你的架构设计.

然后将数据存储在磁盘上的多个数据文件中 - 我忘记了初始文件大小,但每次数据库增长时,都会创建一个新文件进行扩展,其中每个新文件的创建大于前一个文件,直到单个文件大小为止达到了2GB.从现在开始,如果数据库继续增长,则为要插入的文档创建后续的2GB数据文件.

"chunks"在MongoDB的分片方面有意义.因此,文档以可配置大小的"块"存储,并且当需要进行平衡时,移动的是这些数据块(n个文档).