使用 MongoDB 存储和检索文件
Using MongoDB for storing and retrieving files
我们的系统在后台作业的帮助下生成了大量 XML 文件。这些然后由另一个后台作业处理以生成 PDF。截至目前,我们将所有内容存储在 FTP 上,路径存储在 RDBMS 中。然后用户进程可以访问相应的文件(如果存在)并显示。
在我们团队讨论增强系统的过程中,提出了将这些 XML 和 PDF 存储在 NoSQL 数据库上的建议。支持NoSQL的论点是:(我们不是NoSQL专家)
- 这将帮助我们更好地管理文件的更新和删除
- 文件可以轻松备份或复制到多台服务器
- 访问文件应该比传统访问速度更快FTP
虽然除了文件标识符外我们不需要任何内容过滤,但我想知道这是否是替代 FTP 的可行解决方案,如果是,MongoDB 是否是一个很好的 NoSQL 数据库这个任务。
在那里完成了那件事,我可以说是的,这是一个很好的解决方案,提到的所有 3 个论点都站得住脚,尤其是 if your file size is <16Mbytes , if not you have to use gridfs 这使事情有点复杂,但并不多。
此外,如果文件较小并且您有足够的内存,您可以使用 covered query which can get you retrieval speeds comparable to redis
我们的系统在后台作业的帮助下生成了大量 XML 文件。这些然后由另一个后台作业处理以生成 PDF。截至目前,我们将所有内容存储在 FTP 上,路径存储在 RDBMS 中。然后用户进程可以访问相应的文件(如果存在)并显示。
在我们团队讨论增强系统的过程中,提出了将这些 XML 和 PDF 存储在 NoSQL 数据库上的建议。支持NoSQL的论点是:(我们不是NoSQL专家)
- 这将帮助我们更好地管理文件的更新和删除
- 文件可以轻松备份或复制到多台服务器
- 访问文件应该比传统访问速度更快FTP
虽然除了文件标识符外我们不需要任何内容过滤,但我想知道这是否是替代 FTP 的可行解决方案,如果是,MongoDB 是否是一个很好的 NoSQL 数据库这个任务。
在那里完成了那件事,我可以说是的,这是一个很好的解决方案,提到的所有 3 个论点都站得住脚,尤其是 if your file size is <16Mbytes , if not you have to use gridfs 这使事情有点复杂,但并不多。
此外,如果文件较小并且您有足够的内存,您可以使用 covered query which can get you retrieval speeds comparable to redis