1

关于WiredTiger存储和MongoDB的三个问题。

  1. 我需要在可能超过 16MB 大小的数据库中存储(二进制)文件,现在我在 WiredTiger 网站上读到最大文件大小为 512MB,但在 Mongodb插入方法中它说所有文档的最大大小应该是 16MB ,那么我可以在使用 WiredTiger 时存储大于 16MB 的文件吗?

  2. 我需要使用完整的文件而不是其中的一部分(如视频的流式传输部分),是否可以使用 GridFS?

  3. 如何在数据库中插入和查找文件?我找不到有关如何使用 WiredTiger 进行操作的指南...

    我必须从 mongoshell 或 mongofiles 做吗?有没有办法用 node.js 以编程方式做到这一点?

4

1 回答 1

1

1) GridFS 应该用于大于 16 MB 的文件: GridFS 是用于存储和检索超过 BSON 文档大小限制 16 MB 的文件的规范。

编辑:检查此答案以了解 GridFS 限制。

2) 在插入查询时,GridFS 将文件分成块当您向 GridFS 查询文件时,驱动程序将根据需要重新组合块。

3) 使用 WiredTiger 或其他引擎 (MMAPv1) 查询 GridFS 对用户来说是透明的。可以使用驱动方法查询文件,信息在这里

于 2016-12-05T12:40:49.817 回答