Sql server 2012 Sql Server文件表缺陷

Sql server 2012 Sql Server文件表缺陷,sql-server-2012,filetable,Sql Server 2012,Filetable,我正在考虑使用文件表,而不是简单地将文件作为二进制数据存储在数据库中,或者在数据库中存储包含文件共享URL的列。我们的应用程序使用实体框架,所以这是我看到的一个小问题,但可以很容易地解决。另一个原因是,据我所知,文件必须存储在与数据库相同的服务器上,路径为“MachineName\InstanceName\FileShare”(是否可以配置为使文件夹可以存在于另一台服务器上?) 使用FileTables是否还有其他缺点 至于filetable的缺点,除了运行它们所需的稍微复杂的设置之外,我唯一能

我正在考虑使用文件表,而不是简单地将文件作为二进制数据存储在数据库中,或者在数据库中存储包含文件共享URL的列。我们的应用程序使用实体框架,所以这是我看到的一个小问题,但可以很容易地解决。另一个原因是,据我所知,文件必须存储在与数据库相同的服务器上,路径为“MachineName\InstanceName\FileShare”(是否可以配置为使文件夹可以存在于另一台服务器上?)


使用FileTables是否还有其他缺点

至于filetable的缺点,除了运行它们所需的稍微复杂的设置之外,我唯一能想到的是,如果blob的大小小于1Mb,文档建议将它们存储在数据库中而不是文件系统中会提供更好的性能

关于将filestream文件组放在网络共享上,这是行不通的。filestream/filetable的一个常见误解是,创建的文件共享与其他文件共享一样,只是一个普通的windows文件共享。事实并非如此,这些文件存储在文件系统上一个称为NTFS数据容器的特殊位置,然后通过NTFS流API作为文件共享呈现给外部世界。这些文件必须是计算机的本地文件,因为这些NTFS API不能在UNC上工作


唯一能让它在另一台机器上工作的方法是使用iSCSI驱动器,这样NTFS API仍能工作,但文件实际在另一台机器上。

在FileTable共享目录中创建映像后如何获取流id?