关于远程 Blob 存储 (RBS)

SQL Server 远程 BLOB 存储 (RBS) 是一个可选的附加组件,它允许数据库管理员在商用存储解决方案中存储二进制大型对象,而不是直接存储在主数据库服务器上。

RBS 可以从SQL Server 2008 R2功能包页下载。RBS 不包括在 SQL Server 2008 R2 安装介质上,并且 SQL Server 2008 R2 安装程序不安装它。

有关 RBS 的详细信息,请参阅本主题中的RBS 资源。

RBS 的优点

RBS 提供以下优点:

优化的数据库存储和性能

在数据库中存储 BLOB 可能会占用大量文件空间和过多的服务器资源。RBS 高效地将 BLOB 传输到您选择的专用存储解决方案,并且在数据库中存储对 BLOB 的引用。这将为结构化数据释放服务器存储空间,并且为数据库操作释放服务器资源。

高效管理 BLOB

若干 RBS 功能支持方便地对存储的 BLOB 进行管理:

  • BLOBS 使用 ACID(原子性、一致性、隔离性和持久性)事务进行管理。

  • BLOB 组织成集合。

  • 包括垃圾收集、一致性检查和其他维护功能。

标准化 API

RBS 定义一组 API,可为应用程序提供用于访问和修改任何 BLOB 存储的标准化编程模型。每个 BLOB 存储都可以指定自己的提供程序库,该库嵌入 RBS 客户端库并指定存储和访问 BLOB 的方式。

许多第三方存储解决方案供应商都开发了符合这些标准 API 并在不同存储平台上支持 BLOB 存储的 RBS 提供程序。

RBS 要求

对于在其中存储 BLOB 元数据的主数据库服务器,RBS 要求 SQL Server Enterprise。但是,如果您使用提供的 FILESTREAM 提供程序,则可以在 SQL Server Standard 上存储 BLOB 本身。

RBS 包括 FILESTREAM 提供程序,使您可以使用 RBS 在 SQL Server 的实例上存储 BLOB。如果您想要使用 RBS 以便在不同的存储解决方案中存储 BLOB,则不得不使用为该存储解决方案开发的第三方 RBS 提供程序,或者使用 RBS API 开发自定义 RBS 提供程序。在 NTFS 文件系统中存储 BLOB 的示例提供程序在 Codeplex 上作为学习资源提供。

RBS 安全性

当您使用自定义提供程序在 SQL Server 外存储 BLOB 时,这些 BLOB 可能会被绕过 SQL Server 安全系统的其他进程所利用。请确保您使用适合于自定义提供程序所使用的存储介质的权限和加密选项保护存储的 BLOB。

RBS 资源

  • RBS 文档
    RBS 文档包括在 Windows 安装程序包中。如果您想要不安装 RBS 就查看 RBS 文档,则可以在 MSDN 库中在线查看该文档。

  • RBS 白皮书
    白皮书远程 BLOB 存储可作为 Microsoft Word 文档下载,它提供与安装和配置 RBS 有关的详细信息。

  • RBS 示例
    Codeplex 上提供的 RBS 示例演示如何开发 RBS 应用程序,以及如何开发和安装自定义 RBS 提供程序。

  • RBS 博客
    RBS 博客提供可帮助您理解、部署和维护 RBS 的附加信息。