我正在设计一个存储许多大文件的解决方案。根据我在 stackoverflow 上阅读的内容,Mongodb 等数据库系统是存储大量文件的最佳方式(来源:Scalable File Storage)。为什么?当然,我最好将文件简单地存储在可扩展系统(如 Amazon)上的文件系统中,并为每个文件提供一个 ID。
为了试图找到我看过的答案:
- 图片上传存储策略
- MySQL Binary Storage using BLOB VS OS File System:大文件、大数量、大问题
- 大规模图像存储
- 对象存储和文件存储的区别
- 可扩展的文件存储
到目前为止,我很欣赏:
- 存储在文件系统上会使服务器迁移变得更加困难。
- 一个目录中可以保存的文件和文件夹的数量是有限制的。
这两点似乎都不能让我相信,将文件保存在数据库中的额外工作是值得的。在我看来,如果我在其中存储大文件而不是直接存储在文件系统中,则会增加数据库灾难性损坏的风险。我目前正在考虑将文件存储在 Amazon s3 解决方案中。如果我疯了和/或我是否忽略了任何事情,你能告诉我吗?