Sha*_*ica 4 sql-server blob fileserver
我有一个关于上传到我的网站的文件的设计决定:我可以将它们存储在我的文件服务器上,或者我可以将它们存储在我的数据库中的blob(MSSQL 2005).如果它对设计决定有任何影响,这些文件是保密的,必须有一定程度的保护.
我想到的考虑因素是:
我非常感谢这里的一些建议.谢谢!
在SQL Server 2005中,您只能选择使用VARBINARY(MAX)将文件存储在数据库表中,或者将它们保留在外部.
将它们留在数据库之外的明显缺点是数据库无法真正控制它们发生的情况; 他们可以移动,重命名,删除.....
SQL Server 2008引入了类型FILESTERAM属性VARBINARY(MAX),它允许您将文件保留在数据库表之外,但仍然受数据库的事务控制 - 例如,您不能只是从磁盘中删除文件,这些文件是数据库的组成部分,因此得到复制和备份.很棒,如果你需要它,但它可以做一些巨大的备份!:-)
SQL Server 2008的发布提供了一些关于何时直接在数据库中存储内容以及何时使用FILESTREAM的"最佳实践".这些是:
此外,为了不对查询的性能产生负面影响,将大文件放在一个单独的表中通常是个好主意 - 不要让巨大的blob成为您查询的常规表的一部分 - 而是创建一个如果你真的需要兆字节的文档或图像,你只能查询的单独的表.
这可能会让你知道从哪里开始!
| 归档时间: |
|
| 查看次数: |
919 次 |
| 最近记录: |