已知信息:已知MongoDB存储在BSON(Binary JSON)中,而maximum BSON document size为16MB。

问题:为什么16MB本身为什么不32MB或64MB或更多,为什么对16MB设置了确切的限制?到底要依靠16MB的原因是什么?

应该提到的是,在传输过程中,不会消耗过多的带宽,也不需要服务器上过多的RAM。但是,如果我们能够负担得起网络带宽和RAM内存消耗,那该怎么办?然后,除了GridFS,我们别无选择。为什么?

听起来可能很愚蠢。但是,请问有人可以对此进行一些介绍吗?

更新:这是4MB,现在是16MB。

mongodb BSON size

我们可以通过发出以下命令在Mongo Shell上对其进行检查

db.isMaster().maxBsonObjectSize/(1024*1024)

为什么DBAs不允许将其配置为?

最佳答案

检查JIRA票证上的线程,该线程将值从4MB增加到16MB。车票上有一场大辩论:https://jira.mongodb.org/browse/SERVER-431

他们选择16MB而不选择32MB似乎是任意的。由于许多人需要存储大于4MB(我认为小于16MB)的文档,因此增加了存储空间。有人在该线程中要求将其设为可配置的(如您所要求的),这对我来说很有意义。不知道为什么他们还没有决定这样做。

关于mongodb - MongoDB单个文档的大小限制为16MB,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15307800/

10-09 17:54