SQL Filestream用于大小小于1MB的对象

时间:2011-07-29 09:19:48

标签: sql filestream sql-server-2008-r2 sql-server-2008r2-express

我在数据库中存储了许多小图像,并希望使用SQL Server的文件流功能。但Microsoft建议将其用于大于1MB的对象,但我的平均对象大小为300KB。所以我想知道,Filestream会工作吗?如果是这样,有什么缺点? 我使用SQL Server Express 2008 R2,我希望此功能可以帮助我保存数据库大小,否则它会长大以表达版本有限的大小。 感谢

1 个答案:

答案 0 :(得分:1)

Microsoft在their documentation中处理此问题:

  

何时使用FILESTREAM

     

在SQL Server中,BLOB可以是存储的标准varbinary(max)数据   表中的数据,或存储的FILESTREAM varbinary(max)对象   文件系统中的数据。数据的大小和使用决定了   是否应使用数据库存储或文件系统存储。如果   以下条件为真,您应该考虑使用FILESTREAM:

     
      
  • 平均存储的对象大于1 MB。
  •   
  • 快速读取访问非常重要。
  •   
  • 您正在开发使用中间层的应用程序   应用逻辑。
  •   
     

对于较小的对象,在数据库中存储varbinary(max)BLOB    通常会提供更好的流媒体效果。

所以它应该可以工作(假设Express支持它) - 对于较小的对象,你可能只是在数据库内方法上的性能受损。