如果MongoDB中的文档大小超过16mb会怎么样?

时间:2014-04-24 13:18:35

标签: mongodb

我有一些15 mb的文件。如果尺寸超过16 mb会发生什么?我在这个文档中有更多的嵌套数组(不是文件)?请告诉我?谢谢!

4 个答案:

答案 0 :(得分:4)

要回答实际问题:尝试插入大于16MB的文档或尝试以超过16MB的方式更新现有文档的操作将失败,服务器将返回错误。

这种尺寸的文件通常是(非常)糟糕设计的标志,但当然也有例外......

答案 1 :(得分:1)

有时您的文档大小超过16 MB。 GridFS应该能够解决您的问题。

点击此处查看:http://docs.mongodb.org/manual/core/gridfs/

答案 2 :(得分:0)

您可以阅读MongoDB限制here。 16 Mb限制适用于BSON文档。根据文档,MongoDB提供了GridFS API,如果你需要更大的话。

请记住,其他文件应该只存储在您的CDN,网络驱动器或任何地方,并通过MongoDB中的简单链接进行引用。这样您就不必将大型数组保存在db BSON doc中,而只需要对存储它的文件进行引用。

答案 3 :(得分:0)

可能GridFS正是您要找的。这是一个用于存储和检索超过16 MB大小限制的文件的规范。

GridFS不是将文件存储在单个文档中,而是将文件分成多个部分或块,并将每个块存储为单独的文档。

参考:https://docs.mongodb.com/manual/core/gridfs/