Cad*_*ade 83 database sql-server filesystems storage
通常,性能损失有多糟糕的是将文件存储在数据库(特别是mssql)而不是文件系统中?我无法想出在应用程序可移植性之外的一个原因,我想将我的文件存储为SQL Server中的varbinaries.
Mic*_*tum 76
看看这个答案:
从本质上讲,空间和性能可能会非常大,具体取决于用户数量.此外,请记住,Web服务器很便宜,您可以轻松添加更多以平衡负载,而数据库通常是最昂贵且最难扩展的Web体系结构的一部分.
有一些相反的例子(例如,Microsoft Sharepoint),但通常,将文件存储在数据库中并不是一个好主意.
除非您可能编写桌面应用程序和/或大致知道您将拥有多少用户,但对于像公共网站那样随机且无法预料的内容,您可能需要为在数据库中存储文件付出高昂代价.
Jon*_*way 36
如果您可以迁移到SQL Server 2008,您可以利用FILESTREAM支持,它可以为您提供最好的 - 文件存储在文件系统中,但数据库集成比仅在varchar字段中存储文件路径要好得多.您的查询可以返回标准的.NET文件流,这使得集成更加简单.
Lan*_*her 22
我会说,这取决于你的情况.例如,我在当地政府工作,我们有很多图像像面部照片等.我们没有大量的用户,但我们需要有良好的安全性和审计数据.数据库对我们来说是一个更好的解决方案,因为它使这更容易,我们不会遇到扩展问题.
根据我自己的经验,将文件存储为文件总是更好。原因是文件系统针对文件存储进行了优化,而数据库则没有。当然,也有一些例外(例如,备受赞誉的下一代 MS 文件系统应该构建在 SQL Server 之上),但总的来说,这是我的规则。
这是什么问题?
现代DBMS SQL2008有多种处理BLOB的方法,这些方法不仅仅是在表格中.当然,有利有弊,您可能需要更深入地考虑它.
这是一篇有趣的论文,由已故的(?)Jim Gray撰写
归档时间: |
|
查看次数: |
123600 次 |
最近记录: |