从外部数据存储中删除孤立 BLOB

上次修改时间: 2009年10月1日

适用范围: SharePoint Foundation 2010

因为使用 EBS 提供程序会导致孤立 BLOB 文件随时间推移而积聚,所以必须按照适合您网站的计划来删除孤立的 BLOB。

为什么会存在孤立的 BLOB

SharePoint Foundation 没有提供同步删除外部存储的 BLOB 文件的功能。在删除某个文件时(从回收站清除),存储在 Microsoft SQL Server 内容数据库中的文件引用和元数据都将被删除,但 SharePoint Foundation 没有提供对 EBS 提供程序的回调,因而无法从外部 BLOB 存储中删除关联的 BLOB。正因为这一点以及其他一些原因(例如,在存储 BLOB 文件的过程中发生前端 Web 应用程序故障),最终导致了外部 BLOB 存储中积聚孤立的 BLOB 文件。

ISPExternalBinaryProvider 接口不提供删除方法。因为这些 BLOB 文件存储在 SQL Server 事务性边界之外,所以提供程序接口支持使用被动的垃圾收集方案来处置孤立文件。

主题实现惰性垃圾收集介绍了如何管理针对外部 BLOB 存储中孤立 BLOB 文件的垃圾收集过程。应按照所示顺序执行这些步骤,否则可能会导致有问题的竞争条件。

因为 SharePoint Foundation 不参与这一垃圾收集方案,所以由 EBS 提供程序负责以适合站点的方式管理垃圾收集过程。

请参阅

概念

实现惰性垃圾收集

SharePoint Foundation 中二进制大型对象 (BLOB) 的外部存储