20KB以下的二进制数据:BLOB还是文件系统?

4
我正在开发一个Web应用程序,用户可以将他/她的工作保存到服务器。保存的数据以可变长度二进制形式存储,其大小大多在20KB以下(有时会稍微大一些,但不超过100KB)。这些数据经常会被更改和更新。
我在服务器上有两个选项来保存这些数据:作为BLOB(MySQL)或作为文件系统,并引用其在数据库服务器中存储的文件路径。据说每个选项都有优缺点。
那么对于我的应用程序来说,哪一个是最好的选择呢?
谢谢。
2个回答

4
我可能会选择数据库方法。速度差别不太大,而且我非常支持所有数据存储在一个地方的想法。与备份数据库、文件系统和相关数据并保持一致性相比,获取数据库的一致备份要容易得多。
它还提供了统一的访问方法、一致的权限,并允许您远程访问而无需设置单独的服务。
话虽如此,为了避免以后需要移动数据,您应该将其与数据库松散耦合,以保持选项的开放性。

2

我建议将其放在数据库中。为了避免通过数据库进行访问,而构建一个特殊的格式来存储和访问这些数据是没有多大意义的。如果你的应用程序有多个实例同时访问(在 Web 应用程序中很可能出现的情况),那么使用数据库可以让你把这些问题留给数据库引擎来处理,只要你正确地使用它。但如果你使用自己编写的文件格式,你会遇到麻烦。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接