Avamar 空间回收过程 — 第 1 部分:垃圾数据收集

摘要: 本知识库文章介绍了 Avamar 空间回收过程的第一部分。这称为垃圾数据收集。

本文章適用於 本文章不適用於 本文無關於任何特定產品。 本文未識別所有產品版本。

說明

本文是一系列中的第一篇文档,其中记录了 Avamar 如何回收 GSAN 内部和硬盘上的空间。


当前的垃圾数据收集实施与 Avamar v7.0 一起引入,其设计基本保持不变。

垃圾数据收集的作用是什么?

垃圾数据收集是 Avamar 回收用于存储备份数据的空间的过程的第一个阶段。

它在 cur 目录上运行,并通过删除任何备份不再引用的数据区块来释放 GSAN 中的空间:

  • 如果可以在索引中查找数据,则表示数据将被“定义”。
  • 如果数据作为备份的一部分存在(即哈希存在于用户核算系统、复合条带或目录元素中),则引用数据。

通过垃圾数据收集回收的空间在 运行处理 后才能重复使用。在每日计划的垃圾数据收集完成后,立即运行处理。请参阅 Avamar 空间回收过程 — 第 2 部分:正在处理


垃圾数据收集何时运行?

    垃圾数据收集在维护窗口开始时运行,在检查点/hfs/检查点周期之前运行。在此期间,系统传入备份应受到限制,因此垃圾数据收集可以在不加载系统的情况下运行。


    垃圾数据收集的运行时间是多少?

    默认情况下,垃圾数据收集将运行 4 小时。如果两次通过在此时间内未完成,则下一个垃圾数据收集的运行时间将增加 15 分钟。这将继续,直到两次通过成功完成,或达到 7 小时(420 分钟)的默认限制。
     
      是什么可以防止垃圾数据收集成功运行?

      下面列出了常见问题。某些文章可能需要在戴尔支持网站上查看身份验证。


      垃圾数据收集的工作原理

      步骤 1 — 构建参考计数表 (TORC):

      垃圾数据收集读取用户核算系统中的条目、复合条带和目录元素,以构建参考表计数 (TORC)。
      在 TORC 中,垃圾数据收集会记录系统上的所有哈希以及引用每个哈希的次数。

      步骤 2 — 阅读索引:
      TORC 完成后,每个节点都会将其单个索引条带的子集加载到内存中。读取的条带数由 gccount 参数定义。对于索引中定义的每个哈希,垃圾数据收集会在 TORC 中查找哈希,以检查是否引用该哈希。

      • 如果索引和 TORC 中都存在哈希,则无需执行任何操作。TORC 中的每个哈希的引用计数至少为 1,因此哈希是定义和引用的。
      • 如果哈希存在于索引中,但 不在 TORC 中,则定义但不引用哈希,因此可以删除。

      提醒:如果哈希存在于 TORC 中,但 不在索引中,这将是一个数据完整性错误(引用但未定义哈希)。  这会导致 hfscheck 故障。

      步骤 3 — 删除未引用的哈希:
      正如我们前面提到的,未引用的哈希不是任何备份的一部分,因此可以安全地从 Avamar 中删除。为此,垃圾数据收集:

      1. 删除索引中的条目。
      2. 将区块标头描述符 (CHD) 中的哈希条目设为零。CHD 定义单个区块在条带容器内的位置。

      Avamar 已将哈希占用的区域标记为空。出于性能和或容量原因,在此阶段不会删除数据。

      步骤 4 — 更新 TORC:
      如果删除的垃圾数据收集区块是复合区块,则必须更新 TORC。
      回想一下步骤 1,TORC 中的引用计数包括由复合条带(包含复合区块)进行的引用。
      由于已删除复合区块,我们可以将 TORC 中的引用计数减去该复合区块引用的任何哈希数。
      垃圾数据收集通过在复合中读取来查看它引用的哈希,然后更新 TORC 来执行此操作。

      步骤 5 — 阅读下一组索引:
      垃圾数据收集从内存中卸载上一组索引条带,然后加载新集。
      对于这些新的索引条带,将重复步骤 2、3 和 4。
      读取所有索引条带后,将删除 TORC 中具有 0 个引用(得益于步骤 4)的任何数据区块(称为“原子”区块)。

      步骤 6 — 启动新通过:
      读取所有索引后,垃圾数据收集将启动新通过。
      所有索引条带都会重新读取,查找由于我们之前的通过而不再引用的数据。

      这是必需的,因为哈希不是以逻辑顺序读取的,而是按它们存储在索引中的顺序进行读取。
      垃圾数据收集不能确定以最佳顺序查找哈希。哈希可以保留引用,直至通过结束。

      在大多数 Avamar Server 环境中,两个垃圾数据收集传递可以舒适地保持“稳定状态”容量。
      垃圾数据收集将执行传递,直至其用完,或通过完成而不删除任何数据。



      手动垃圾数据收集

      不应要求对 Avamar Server 进行微管理。计划程序旨在自动运行维护任务。如果 Avamar 容量较高,请参阅《Avamar 操作最佳做法指南》和 《Avamar:容量管理概念和培训

      极少数 情况下,运行垃圾数据收集 可能有助于 缓解 GSAN“用户容量”高到系统进入只读模式的严重问题。
      在这些情况下,将手动运行垃圾数据收集,以将容量级别降至低于只读阈值。这允许运行备份窗口。
      自动垃圾数据收集可以照常继续工作。

      在考虑手动垃圾数据收集之前,Avamar 支持应全面调查并了解情况。
      在进行此类调查后,如果未经 L2 支持工程师的授权,则 绝不 应请求支持在系统上运行手动垃圾数据收集。
      请参阅 Avamar — 关于手动垃圾数据收集的使用

      其他資訊



       

      受影響的產品

      Avamar

      產品

      Avamar, Avamar Server
      文章屬性
      文章編號: 000068726
      文章類型: How To
      上次修改時間: 05 8月 2025
      版本:  12
      向其他 Dell 使用者尋求您問題的答案
      支援服務
      檢查您的裝置是否在支援服務的涵蓋範圍內。