21

已知信息:已知MongoDB 以 BSON(二进制 JSON)存储,最大 BSON 文档大小为 16MB。

问题:为什么 16MB 本身为什么不是 32MB 或 64MB 或更多,16MB 的确切限制在哪里,以及完全依赖 16MB 的原因是什么?

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

这听起来可能很愚蠢。但是请任何人都可以对此提出一些亮点吗?


更新:原来是 4MB,现在是 16MB。

mongodb BSON 大小

我们可以通过发出以下命令在 Mongo Shell 上检查它

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

为什么DBA不允许配置它?

4

1 回答 1

21

查看 JIRA 票证上的线程,该线程将值从 4MB 增加到 16MB。关于票有相当大的辩论:https ://jira.mongodb.org/browse/SERVER-431

他们为什么选择 16MB 而不是 32MB 似乎是武断的。它之所以增加是因为许多人需要存储大于 4MB 的文档(我假设小于 16MB)。有些人在该线程中要求将其设置为可配置的(就像你问的那样),这对我来说很有意义。不知道为什么他们还没有决定这样做。

于 2013-03-09T09:36:56.640 回答