本教程将向你展示如何在服务器端备份中运行数据去重与压缩。你的目标很明确:降低存储成本,并让每一次备份作业更快、更高效。数据保护团队每年都在面对不断增长的数据量。这两项技术能够在保留每一个还原点完整性的同时,减少需要存储的字节数。去重会移除重复的数据块,压缩则会将剩余数据压得更紧。这两项功能都运行在服务器端,因此你现有的作业流程无需改变。实施过程强调实操。你需要针对真实工作负载完成配置、验证和调优。这种方式能够避免生产系统遭遇意外。务必先在实验环境中完成全部测试。

去重与压缩对数据保护的价值

去重与压缩能够减少备份数据的存储占用,从而让你的数据保护策略更高效、更具成本效益。在保持每个还原点完整的同时,你可以存储更少的数据量。你还可以获得更快的备份作业速度和更低的存储成本。

去重如何减少备份存储

去重会在你的备份文件中查找并移除重复的数据块。它使用基于哈希索引的块级去重,将每个数据块与哈希索引进行比对。如果某个数据块已存在,系统就只存储一个引用,而不是完整的数据块。这种方式对文件服务器尤其有效。文件服务器通常保存文档、图片等非结构化数据。这类应用通常不会对自身数据进行压缩,因此去重在这里可以节省大量备份空间。通过使用基于哈希索引的块级去重,你可以在不额外增加 CPU 负载的前提下获得显著的存储收益。

压缩如何缩小备份数据体积

压缩会进一步缩小剩余唯一数据的体积。其效果会因数据类型而异:

  • 数据库备份文件由于包含大量重复数据,可实现高达 20:1 的压缩比。这种数据去重与压缩可将整体备份存储空间减少 95%(或相较传统方法减少 75%)。
  • 图片、音频、视频和大型文档等非结构化数据,可优化的压缩空间有限。

将去重与压缩结合使用,能够带来最佳效果。你不仅可以降低存储成本,还能提升备份与恢复性能。这也有助于实现你的灾难恢复目标。更高的存储效率意味着你可以在现有资源上保留更多恢复点。数据体积越小,总体存储支出也越低。

数据去重与压缩如何协同工作

将数据去重与压缩结合使用,可以带来额外的存储节省。你先运行基于哈希索引的块级去重以移除重复块,然后再对剩余的唯一数据应用压缩。这一两步流程有助于实现你的数据保护与灾难恢复目标。你可以在同样的硬件上保留更多恢复点,同时降低整体存储成本。它会强制使用固定的压缩块大小,而这可能限制压缩效率。Veeam 仅在单个备份文件内执行去重。把更多服务器放进同一个文件,会提升整体效果。MSDP 技术可实现云端去重、压缩与加密,从而缩短处理时间并加快恢复速度。

去重级别与类型

去重主要分为两个级别:源端去重和目标端去重。源端去重在数据传输到目标之前,于服务器侧执行。目标端去重则在数据到达存储设备后再进行处理。你的选择取决于工作负载和基础设施。至于去重类型,则需要在定长块去重和变长块去重之间做选择。变长去重能够解决一个叫作 chunk shift 的问题。下表对这两种方式进行了比较:

方面定长块去重(FSC)变长块去重(CDC)
边界行为微小变化可能导致 chunk shift使用基于内容的边界,避免 chunk shift
重复检测能力检测到的重复数据明显较少能够识别更多冗余数据
对压缩率/缩减率的影响chunk shift 会限制缩减率识别出更多冗余数据,从而提升缩减率
应用情况在实验中效果较弱被广泛应用于去重系统中

基于内容的在线去重使用的是内容定义分块(content-defined chunking)方法。该方法根据满足预设条件的字节来设置块边界。

研究表明,与固定大小分块相比,它能检测出更多冗余数据,从而支持更高的缩减率。

压缩算法与块大小

完成去重后,接下来就要应用压缩。基于哈希索引的块级去重会为你的文件定义块大小。这个固定块大小会成为压缩的基本单位。较大的块可提升压缩比,但会占用更多内存。较小的块会减少 CPU 消耗,但数据缩减效果也较弱。你必须针对每类工作负载在这些取舍之间取得平衡。数据库备份文件通常适合较大的块。非结构化数据则可能更适合较小的块。在正式部署到生产环境之前,务必先在实验环境中测试不同的块大小。持续监控 CPU、内存和恢复时间。这样的调优能确保你在不影响恢复性能的前提下,获得最佳的数据缩减效果。基于哈希索引的块级去重配合合适的压缩算法,有助于实现你的存储节省目标。

分步实施数据去重

现在你已经了解了去重与压缩如何协同工作。本节将带你完成实际配置。你将选择去重级别、对服务器进行分组,并验证第一次运行效果。

选择合适的去重级别

你的第一个决策是选择源端去重还是目标端去重。两种方式会把负载转移到不同的位置。下表展示了它们之间的权衡:

评估维度源端去重目标端去重
网络带宽占用显著降低——更少数据在网络中传输不会减少——备份时完整数据仍需传输
生产服务器 CPU客户端处理会增加额外负载对生产服务器无影响
备份服务器资源备份服务器负载较低备份服务器需要较多 CPU 和 RAM
适用场景带宽受限的环境生产 CPU 负载较高但带宽充足的环境

如果网络链路是瓶颈,就选择源端去重。服务器会在数据离开主机前先行处理,因此跨网络传输的数据更少,但生产 CPU 会承担额外工作。如果你的生产服务器本身负载已经很高,就选择目标端去重。此时处理负载会转移到备份服务器上,但你需要充足的网络带宽来支撑这种方案。

配置并运行去重

把多台服务器归入同一个备份文件,可以显著提升节省效果。Veeam 仅在单个备份文件内执行去重。向该文件中加入更多服务器,去重引擎就能在它们之间发现更多重复块。例如,文件服务器和数据库服务器可能共享操作系统文件,这些共享块只需去重一次。因此,你需要围绕这一原则来规划作业布局。

按照以下步骤配置并验证你的首次运行:

  1. 创建一个新的备份作业,并添加你希望分组的服务器。
  2. 在作业设置中启用基于哈希索引的块级去重。
  3. 根据上表选择合适的去重级别。
  4. 运行作业,并等待首次完整备份完成。
  5. 检查作业报告中的去重比率。
  6. 将存储后的大小与源数据大小进行比较。

基于哈希索引的块级去重会在首次运行时构建哈希索引。后续运行时,新数据块会与该索引进行比对。较高的比率说明你的分组策略效果良好;较低的比率则意味着你可能需要将更多相似服务器加入同一个作业。你还可以检查生产服务器和备份服务器上的 CPU 与内存使用情况,并留意是否出现会影响工作时段的资源峰值。

在扩展部署之前,验证至关重要。请从去重后的备份中执行一次测试恢复,确认每一个文件都能完整恢复。这一步能够及早发现配置错误。恢复测试成功后,你就可以将作业扩展到更多服务器。基于哈希索引的块级去重通过周密规划,往往能够带来可观的存储节省。

分步实施压缩

应用并调优压缩

选定压缩算法后,就需要在作业设置中启用压缩。相关步骤与去重配置类似。你需要设置压缩级别并选择块大小。

按照以下步骤应用压缩:

  1. 打开你的作业并进入存储设置。
  2. 从列表中选择你所需的压缩算法。
  3. 选择初始压缩级别。若使用 Zstandard,建议从 level 3 开始。
  4. 设置块大小。较大的块有助于进一步减小文件总体积,但会占用更多内存;较小的块会降低 CPU 负载,但缩减效果较弱。
  5. 运行测试作业,并查看作业报告中的压缩比率。
  6. 将压缩后的大小与未压缩大小进行比较。

调优需要反复迭代。使用不同的块大小和压缩级别进行多轮测试。监控作业窗口期间的 CPU 使用率。过高的 CPU 占用可能会拖慢其他生产任务。检查压缩比是否符合你的预期,同时也要监控恢复时间。高度压缩的文件在恢复时可能需要更长时间进行解压,而灾难恢复场景往往要求快速恢复。还要检查内存消耗,因为较大的块大小会在压缩和解压期间都占用更多 RAM。

请先在具有代表性的数据样本上测试压缩效果。真实工作负载的模式与合成基准测试往往不同。适用于数据库备份的方法,不一定适用于文件服务器。

数据库文件通常更适合较大的块,而图片、视频等非结构化数据可能更适合较小的块。请分别测试每一种工作负载类型。最佳平衡点取决于你的基础设施条件。完成调优后,再执行一次完整恢复测试,确认所有文件都能正确恢复。

至此,压缩的实施完成了你的存储缩减策略。将其与数据去重结合使用,通常能够取得最佳效果。你会对文件进行两次“瘦身”:先移除重复数据块,再将剩余数据压得更紧。这样既能显著节省存储空间,又能保持备份恢复流程的快速与可靠。

降低备份存储的最佳实践

优化性能与节省效果

在接触生产环境之前,先在演示环境或实验环境中测试去重与压缩。实验环境能够让你基于真实工作负载测量实际比率。合成基准测试往往具有误导性。请先跑完整个备份周期,然后再执行恢复测试。这一步可以确保你的设置在影响真实数据之前已被验证无误。

将相似的服务器分组到同一个备份文件中。基于哈希索引的块级去重会在更多服务器共享同一作业时,发现更多重复块。例如,文件服务器与数据库服务器可能共享操作系统文件,这些共享块只需要去重一次。这种方式能够提升整个环境的存储效率。

避免数据完整性问题

在启用这两项功能后,持续监控 CPU、内存和恢复时间。备份窗口期间过高的 CPU 使用率可能拖慢生产任务。较大的压缩块在压缩和解压时都需要更多 RAM。请留意是否出现影响工作时段的资源峰值。

定期检查恢复时间。高度压缩的文件在恢复过程中可能需要更长时间解压,而灾难恢复要求你具备快速恢复能力。每次更改配置后都要执行一次测试恢复,并确认每个文件都能完整恢复。

基于哈希索引的块级去重非常依赖周密规划。降低存储占用有助于实现你的数据保护目标,缩短恢复时间则有助于支撑你的灾难恢复计划。而这两项成果都依赖于持续监控和定期测试。只有验证每一次变更,你的备份与恢复策略才能保持可靠。

现在,你已经掌握了一条清晰的服务器端去重与压缩实施路径。先将相似服务器归入同一个备份文件,选择源端或目标端去重,再选用如 Zstandard 这样的压缩算法。通过测试恢复来验证每一项变更。这些步骤将帮助你缩小存储占用、加快作业速度并降低成本。

务必先在演示环境或实验环境中完成全部测试。测量真实比率,观察 CPU 与内存,并确认恢复速度足够快。强有力的数据保护与灾难恢复能力,正是建立在这种严谨实践之上。下载我们的检查清单,立即开始降低你的存储成本。

常见问题

应该选择哪种去重级别?

当网络链路是瓶颈时,选择源端去重。服务器会在数据离开主机前先行处理,因此跨网络传输的数据更少。当生产服务器本身负载较高时,选择目标端去重。此时处理负载将由备份服务器承担。

为什么把服务器分组到同一个作业中很重要?

Veeam 仅在单个备份文件内执行去重。向同一个文件中加入更多服务器后,引擎就能在它们之间发现更多重复块。例如,文件服务器和数据库服务器可能共享操作系统文件,这些共享块只需去重一次,从而提升你的存储节省效果。

哪种压缩算法最适合备份?

Zstandard 对大多数作业而言提供了最佳平衡。它在保持与 zlib 相当压缩率的同时,压缩速度可快 3 到 5 倍。LZ4 则提供最高吞吐量和最低 CPU 负载。如果速度比降低总存储量更重要,就选择 LZ4。数据库文件尤其适合使用 Zstandard 压缩。

已经压缩过的数据还能启用去重吗?

不能。去重引擎无法在压缩数据流内部识别重复块。当系统无法重建原始文件时,恢复过程可能失败。应将去重用于那些不会自行压缩数据的来源,例如文件服务器。

如何验证新的配置?

在演示环境或实验环境中运行一个完整的备份周期,然后从中执行恢复。查看作业报告中的去重与压缩比率,监控 CPU、内存和恢复时间。在将作业扩展到更多服务器之前,先确认每一个文件都能完整恢复。