node.js - 如何克服 mongodb 的大小限制以及一般存储、发送和检索大型文档?
问题描述
目前我正在开发一个可以发送和检索任意大文件的应用程序。一开始我们决定为此使用 json,因为它很容易处理和存储。这一直有效,直到图像、视频或更大的东西进来。 我们目前这样做的方式。
所以我们至少在当前的方法中遇到了一些问题:
所以目前我们正在努力克服 MongoDB 的限制,但总的来说,这似乎是我们走错了路。随着我们越来越高,将会有越来越多的限制难以克服,也许 MongoDB 的限制是无法解决的。那么有没有一种比我们现在做的更有效的方法呢?
还有一件事要说。一般来说,我们需要将整个对象一起加载到服务器端,以验证该结构是我们期望的结构,并对整个对象进行哈希处理。所以我们现在没有考虑拆分它,但也许这是唯一的选择。但即便如此,您将如何发送视频或类似的大块?
解决方案
如果您需要在 MongoDb 中存储大于 16 MB 的文件,您可以使用GridFS。
GridFS的工作原理是将您的文件拆分成更小的数据块并分别存储。当需要该文件时,它会重新组合并变得可用。
推荐阅读
- unity3d - Unity:从计时器触发时,LoadScene 不起作用
- .htaccess - 将所有 http 重定向到 https,将所有 www 重定向到非 www,并从所有 url 中删除 .html
- php - PHP(Codeigniter 3)会话在Google Cloud Platform中重定向后被破坏,但在Localhost和Cpanel中正常工作
- python - python中向量的大小是(N,1)而不是(N,)
- lua - 如何在lua中将一个表存储到另一个表?
- python - 将 hachoir 库的衍生物安装到 Google Colab 中
- mysql - 在 MySQL 中获取“错误 1452(23000):无法添加或更新子行”
- javascript - 为什么 Google Maps .getCenter() 返回无效坐标?
- javascript - GSAP + AdHelper 模板导致“未定义 lib”
- php - 在 Heroku 上安装 PECL 库