如何在MongoDB中存储变量大小(1-30 mb)的数据?

时间:2015-04-02 13:56:23

标签: mongodb crud gridfs atomicity

我正在使用Mongo-java Driver 2.13。我想存储不同大小(1mb到30mb)的pdf文件。

  

注意:我知道我无法存储大小超过16mb的文档   MongoDB的。然后,我需要使用GridFS。

我想以正常方式在BookPDFs集合中保存小尺寸(<16 mb)的pdf文件。对于较大的文件,我需要使用GridFS(fs.chunksfs.files)存储它。当我想要检索所有PDF时,需要访问BookPDFs集合和fs.chunksfs.files集合。对于该查找操作,它将失去原子性,并且从不同的集合中获取数据将花费很多时间。

在获取数据时,我不需要大块数据。所以GridFS在这里没有那么多用处。应该是最好的方法:

  • 将所有数据保存在GridFS中。(fs.files中的标题,作者等字段为 元数据)

  • 根据尺寸将数据保存在不同的集合中

  • 还有其他方法吗?

提前致谢。

0 个答案:

没有答案