数据重复删除概述

 

发布日期: 2016年8月

适用于: Windows Storage Server 2012,Windows Server 2012 R2,Windows Server 2012

本主题描述了 Windows Server 2012 R2 和 Windows Server 2012 中的重复数据删除功能,并介绍该功能的实际应用。

功能描述

重复数据删除指的是在数据中查找和删除重复内容,而不会影响其保真度或完整性。 其目标是通过将文件分割成大小可以改变 (32-128 KB) 的小区块、确定重复的区块,然后为每个区块保留一个副本,从而在更小的空间中存储更多的数据。 区块的冗余副本由对单个副本的引用所取代。 区块会进行压缩,然后以特殊的容器文件形式组织到 System Volume Information 文件夹中。

结果是对每个文件进行了磁盘转换,如图 1 所示。 重复删除之后,文件不再作为独立的数据流进行存储,而是替换为指向存储在通用区块存储位置的数据块的存根。 由于这些文件共享区块,且这些区块仅存储一次,从而减少了存储所有文件所需的磁盘空间。 在文件访问期间,正确的区块会采用透明的方式组装以处理数据,而不需要调用应用程序,也无需用户了解文件在磁盘上的转换。 这样管理员便能够对文件应用重复数据删除,而无需担心应用程序的行为变化或对访问这些文件的用户造成的影响。

图 1:磁盘上的文件转换

图 1 重复数据删除期间文件在磁盘上的转换

针对卷启用了重复数据删除而且对数据进行优化之后,卷中会包含以下内容:

  • 未优化的文件。 例如,未优化的文件可以包括:无法满足所选文件保留时间策略设置的文件、系统状态文件、备用数据流、加密文件、具有扩展属性的文件、小于 32 KB 的文件、其他重新分析点文件或者正由其他应用程序使用的文件(“使用中”限制在 Windows Server 2012 R2 中已删除)。

  • 优化的文件。 作为重新分析点存储的文件,其中包含的指针指向区块存储中各个区块的地图,这些区块是还原所请求的文件所必需的。

  • 区块存储。 优化的文件数据所在的位置。

  • 额外的可用空间。 优化的文件和区块存储比优化前占用的空间要小很多。

实际的应用程序

为了应对企业数据存储的增长,管理员想要合并多个服务器,并将容量伸缩和数据优化设置为关键目标。 重复数据删除功能提供了用来实现这些目标的可行方法,其中包括:

  • **容量优化。**重复数据删除使用更少的物理空间存储更多的数据。 它能比单实例存储 (SIS) 或 NTFS 压缩等功能实现更大的存储效率。 重复数据删除功能使用子文件可变大小的区块和压缩,常规文件服务器的优化率共为 2:1,而虚拟数据的优化率最高可达 20:1。

  • **规模和性能。**重复数据删除具有高度的可伸缩性,能够有效利用资源,并且不会产生干扰。 它在 Windows Server 2012 R2 中处理速度可达每秒 50 MB,并且在 Windows Server 2012 中每秒可处理大约 20 MB 的数据。 它可以在多个卷上同时运行而不会影响服务器上的其他工作负荷。 通过控制 CPU 和内存资源的消耗,保持对服务器工作负载的较低影响。 如果服务器太忙,则重复数据删除功能可能会完全停止。 此外,管理员的灵活性也比较强:可以在任意时间运行重复数据删除、设置重复数据删除功能的运行计划、建立选择策略。

  • **可靠性和数据完整性。**当应用重复数据删除时,数据的完整性会得到维护。 重复数据删除利用校验和、一致性以及标识验证来确保数据的完整性。 对于所有元数据和最常引用的数据,重复数据删除会保留冗余,以确保发生数据损坏时可恢复数据。

  • **使用 BranchCache 提高带宽效率。**通过与 BranchCache 相结合,同样的优化技术还可应用于通过 WAN 传输到分支机构的数据。 结果就是缩短文件下载时间和降低带宽占用。

  • **使用熟悉的工具进行优化管理。**重复数据删除具有置于服务器管理器和 Windows PowerShell 中的优化功能。 默认设置可立即实现节省,管理员也可以对设置进行微调从而实现更多的节省。 用户可以轻松使用 Windows PowerShell cmdlet 开始优化作业或计划在将来运行。 也可使用 Unattend.xml 文件(可调用 Windows PowerShell 脚本并与 Sysprep 一起用于在系统首次启动时部署删除重复)来安装“重复数据删除”功能并在选定卷上启用删除重复。

新功能和更改的功能

下表描述了在重复数据删除功能中的一些更改。 有关详细信息,请参阅 什么是 Windows Server 中的重复数据删除功能中的新增功能

特性/功能

新功能或更新的功能?

说明

虚拟桌面基础结构 (VDI) 工作负荷的远程存储的重复数据删除

Windows Server 2012 R2 中的新增功能

通过在群集共享卷 (CSV) 上实现重复数据删除,可优化虚拟桌面基础结构 (VDI) 工作负荷的活动虚拟硬盘 (VHD)。

在其原始路径上展开经优化的文件

Windows Server 2012 R2 中的新增功能

如果需要与应用程序、性能以及其他要求兼容,请使用 Windows PowerShell中的新的 Expand-DedupFile cmdlet以在原始路径上的指定路径上展开优化的文件。 有关 cmdlet 的详细信息,请参阅 T:Deduplication.Expand-DedupFile。

虚拟化备份应用程序所使用的备份卷的重复数据删除

Windows Server 2012 R2 中的新增功能

通过在群集共享卷 (CSV) 上实现重复数据删除或有限超聚合配置来优化虚拟化备份应用程序工作负载所使用的活动虚拟硬盘 (VHD)。 (受带有 2014 年 11 月更新汇总的 Windows Server 2012 R2 (KB 3000850) 或更高版本支持。)。

要求

若要充分利用重复数据删除,环境必须符合以下要求:

  • 服务器:一台运行至少带有一个数据卷的 Windows Server 2012 R2 或 Windows Server 2012 的计算机或虚拟机

  • (可选)另外一台运行通过网络连接到服务器的 Windows Server 2012 R2 或 Windows Server 2012 的计算机或虚拟机。

    重要

    如果在 VDI 或虚拟化备份工作负载上执行重复数据删除,则所有 VHD 文件必须:

    • 存储在运行 Windows Server 2012 R2 的文件服务器上,并且在不同的服务器上运行存储节点和计算节点。

    • 存储在特定的有限超聚合配置中的本地存储上。 有关详细要求,请参阅计划部署重复数据删除

Azure 虚拟机的互操作性

你可以在 Azure 中的虚拟机上运行 Windows Server 角色服务。 此方案已经使用 Windows Server 2012 R2 测试过。 我们建议使用带有 Windows Azure 虚拟机的重复数据删除,因为 Windows Azure虚拟机的卷可频繁读取,但很少写入。 在这些情况下,重复数据删除可以提供在 Azure VM 中存储更多数据的有效方法。

下面的工作负荷可以是很好的候选对象,用于在 Azure VM 上重复数据删除:

  • 具有相对静态内容的常规文件服务器

  • 具有相对静态内容的 Microsoft SharePoint 站点

  • 具有相对静态内容的网站

由于对工作负荷所使用的大型文件的更改频率,不建议下面的工作负荷用于 Azure VM 上的重复数据删除:

  • 消息服务器,例如 Microsoft Exchange Server

  • 数据库服务器,例如 Microsoft SQL Server

若要了解如何开始使用 Azure 虚拟机,请访问 Azure 网站

体系结构概述

重复数据删除功能由一个监视本地或远程 I/O 的筛选器驱动程序和一个控制三种可用的作业类型(优化、垃圾回收和清理)的重复数据删除服务组成。

重复数据删除体系结构中的固有功能是在发生硬件故障时有弹性,对数据和元数据(包括元数据的冗余和访问最多的数据区块)进行完整的校验和验证。

重复数据删除可能可以处理选定卷上的所有数据(除了大小小于 32 KB 的文件、已排除的文件夹中的文件或应用年龄设置的文件)。 在启用该功能之前,你应该仔细确定一台服务器以及附加的卷是否是进行重复数据删除的合适候选对象。 我们强烈建议在重复数据删除期间定期备份重要数据。

另请参阅

有关其他相关信息,请参阅以下资源。

内容类型

参考

产品评估

部署

操作

社区资源

相关技术