Sql server 小文件的FILESTREAM与VARBINARY

Sql server 小文件的FILESTREAM与VARBINARY,sql-server,filestream,Sql Server,Filestream,我在这里找不到确切的答案;如果我错了,请纠正我 对于预期中值大小为40KB的文档文件,使用VARBINARY是否有令人信服的理由,其中极少数异常值可以达到2MB(当有人上传扫描时) 根据Technet: 当存储的对象平均大于1 MB时,[FILESTREAM是合适的 …就我而言,这与事实相去甚远 文件表本身将非常小;绝对限制为2000个文件。批量下载将限于10个文件 在这种情况下,FILESTREAM和VARBINARY(MAX)之间可能根本没有区别。在选择的时候除了文件大小和大容量下载之外还有

我在这里找不到确切的答案;如果我错了,请纠正我

对于预期中值大小为40KB的文档文件,使用
VARBINARY
是否有令人信服的理由,其中极少数异常值可以达到2MB(当有人上传扫描时)

根据Technet:

当存储的对象平均大于1 MB时,[
FILESTREAM
是合适的

…就我而言,这与事实相去甚远

文件表本身将非常小;绝对限制为2000个文件。批量下载将限于10个文件


在这种情况下,
FILESTREAM
VARBINARY(MAX)
之间可能根本没有区别。在选择的时候除了文件大小和大容量下载之外还有其他因素要考虑吗?

< P>从性能的角度看,你不需要使用 FielestRAM< <代码>路由。< /P>
但是,与
VARBINARY(MAX)
相比,它还有一个可能的优势——如果将VARBINARY列定义为存储为文件流,则应用程序可以在SQL Server 2008中使用
SqlFileStream

直接访问它,二进制数据存储在由SQL Server引擎管理的特殊文件夹结构中。数据库中只剩下一个指向该文件的指针以及一个必需的GUID列,以便使用来自Win32客户端的文件流。
我认为,这有助于您理解您的问题。

简单是一个重要因素。对于总共80MB的2k文件,我不关心性能。根据我的性能测试,varbinary的性能更高,高达1mb。出于好奇,Filestream是否真的不如小文件?假设您有足够多的这些文件和并发用户,如果确实存在差异,则可以看到真正的差异。是的。检查这里,例如:这可以深入了解服务器的工作情况,但不能回答问题。