备份链是什么
备份链由链头与链身构成:链头是全量备份,链身是依赖它的一系列增量或差异备份。恢复某个时间点需要把链上相关副本按顺序应用一遍,因此链条越长恢复越慢,任何一段缺失都会阻断其后所有恢复点。合成为新的全量是压缩链长的常见做法。
基本信息
| 链头 | 全量备份,不可缺失 |
|---|---|
| 链身 | 增量或差异备份,依赖链头 |
| 合成全量 | 在备份端由既有副本重组出新全量,减少对生产的影响 |
| 生命周期 | 链头保留期必须覆盖依赖它的全部副本 |
链条结构示意
链条结构示意
full-10-01
inc-10-02 -> inc-10-03 -> inc-10-04
恢复到 10-04 状态:依次应用以上 4 份,缺任意一份则无法完整恢复
# 合成全量:用 10-01 与 10-02、10-03 在备份端重组出 10-04 的完整副本链条长度的影响
| 链条长度 | 恢复耗时 | 失败影响面 |
|---|---|---|
| 短链 | 快,重放份数少 | 单段损坏影响有限 |
| 长链 | 慢,需逐份重放 | 任一段损坏则其后恢复点全部失效 |
| 定期重开 | 稳定可控 | 需要额外空间与窗口做新全量 |
链条管理要点
- 清理前先查依赖:删除任何一份副本前确认没有恢复点仍引用它
- 新锚点成功后再清理旧链条,顺序反过来会留下无链头的空窗
- 给链条建立可视化清单:哪份依赖哪份、保留到什么时候要能一眼看清
- 定期做完整链条恢复演练,长链的耗时问题只能在演练中暴露
- 链条跨存储存放时记录介质与位置,介质轮换后清单要同步更新
专业备份软件通常自动管理链生命周期,并在保留策略到期时保护链头;自研脚本需自行实现该逻辑,否则很容易误删锚点。
断链的典型原因
- 保留策略只按时间清理,未识别链头与链身的依赖关系
- 归档任务中途失败但未告警,链条上出现空缺而无人察觉
- 存储空间不足导致某一份副本被部分写入,产物损坏
- 人工清理旧数据时误删链头,之后所有增量都失去参照