【问题标题】:SQL Server 2008 FileStream vs Normal FilesSQL Server 2008 FileStream 与普通文件
【发布时间】:2011-04-05 12:52:26
【问题描述】:

我正在创建一个像 youtube 这样的应用程序来存储视频,我需要一些建议。

我应该使用 SQL Server FileStream 来存储视频文件,还是应该将它们存储在硬盘上的某个位置并将路径记录为 SQL Server 中的 varchar(MAX)?

推荐哪个以及为什么?

除了这两个之外,您还有其他推荐吗?请随时告诉我,但也请告诉我为什么。

非常感谢。

【问题讨论】:

    标签: c# asp.net sql-server-2008 filestream


    【解决方案1】:

    FILESREAM 类型的优点是提供透明事务,同时仍将大文件存储在文件系统上。缺点是它是专有的,如果您决定更改数据库,此解决方案可能不太适合其他数据库。因此,恕我直言,不可能客观地回答这个问题。

    【讨论】:

      【解决方案2】:

      我会将它们存储在外面,只是因为没有立即和迫切需要将它们存储在内部。此外,视频很大,您可能需要通过其他一些编码等步骤来运行它们,这可能会或可能不会像 SQL Server。使用基本文件还可以让您有机会将负载分散到任意数量的文件服务器上,而不是单个 SQL Server。

      重新路径;不要存储 完整 路径 - 仅存储一些路径相对于您在应用中配置的外部根。这样,您可以重新定位所有文件并只需更改单个站点设置,而不必做一个大的UPDATE。例如,我可能会在数据库中存储foo/bar/20110404_27.mpg,然后将其与我的站点设置\\myfileserver\share(使用Path.Combine)结合起来。

      【讨论】:

        【解决方案3】:
        猜你喜欢
        • 2011-06-10
        • 1970-01-01
        • 1970-01-01
        • 2010-12-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多