gpt4 book ai didi

mysql - Web 应用程序的文件存储 : Filesystem vs DB vs NoSQL engines

转载 作者:IT老高 更新时间:2023-10-28 23:42:36 28 4
gpt4 key购买 nike

我有一个存储大量用户生成文件的 Web 应用程序。目前这些都存储在服务器文件系统上,这对我来说有几个缺点。

  • 当我们移动“文件夹”(由我们的应用程序定义)时,我们还必须移动磁盘上的文件(尽管这更多是由于原始开发人员的奇怪设计决定,而不是需要将内容存储在文件系统)。
  • 很难为文件系统操作编写测试;我有一个模拟文件系统类,它记录诸如移动、删除等操作,而不执行它们,这或多或少可以完成这项工作,但我对测试没有 100% 的信心。
  • 我将添加一些其他工作,这些工作需要从其他服务访问文件以执行其他任务(例如在 Solr 中编制索引、生成缩略图、电影格式转换),因此我需要远程获取这些文件。通过网络共享执行此操作似乎很狡猾...
  • 过去处理文件系统的权限有时会给我们带来问题,尽管现在我们已经转移到纯 Linux 环境,这应该不成问题了。

所以,我的主要问题是

  • 在 MySQL 中将文件存储为 BLOB 有哪些缺点?
  • 像 Cassandra 这样的 NoSQL 系统是否存在同样的问题?
  • 有没有人有任何其他可能合适的建议,例如MogileFS 等?

最佳答案

不是直接的答案,而是一些指向非常有趣且在某种程度上相似的问题的指针(是的,它们是关于 blob 和图像,但这是 IMO 可比的)。

What are the downsides of storing files as BLOBs in MySQL?

Do the same problems exist with NoSQL systems like Cassandra?

PS:我不想成为 killer ,但我认为任何 NoSQL 解决方案都无法解决您的问题(NoSQL 与大多数企业无关)。

关于mysql - Web 应用程序的文件存储 : Filesystem vs DB vs NoSQL engines,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2890452/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com