已知信息:据了解,MongoDB存储在BSON(Binary JSON)中,maximum BSON document size为16MB。
问题:为什么16MB本身为什么不是32MB或64MB或更多,并且确切地限制了16MB以及依赖于16MB的原因是什么?
提到在传输过程中,不会消耗过多的带宽,并且不需要服务器上过多的RAM。但是,如果我们能够承受网络带宽和RAM内存消耗,该怎么办?然后,我们除了GridFS之外别无选择。为什么呢?
这可能听起来很愚蠢。但请有人能对此有所启发吗?
<小时/> 更新:这是4MB,现在是16MB。
我们可以通过发出以下命令
在Mongo Shell上查看它db.isMaster().maxBsonObjectSize/(1024*1024)
为什么不允许DBAs配置它?
答案 0 :(得分:21)
检查JIRA票证上的线程,该值将值从4MB增加到16MB。票证上有相当大的争议:https://jira.mongodb.org/browse/SERVER-431
为什么他们选择16MB,而不是说32MB似乎是武断的。它增加了,因为许多人需要存储大于4MB的文件(我认为低于16MB)。有些人在那个帖子中要求让它可以配置(就像你问的那样),这对我来说很有意义。不知道为什么他们没有决定这样做。