You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CockroachDB恢复数据库时,行与索引条目数为何出现差异?

CockroachDB备份与恢复指标差异原因及数据完整性确认

现象回顾

备份完成时的指标输出:

job_id       |  status   | fraction_completed |  rows   | index_entries |    bytes
---------------------+-----------+--------------------+---------+---------------+--------------

  903515943941406094 | succeeded |                  1 | 100000 |       200000 | 4194304

恢复完成时的指标输出:

job_id       |  status   | fraction_completed |  rows   | index_entries |    bytes
---------------------+-----------+--------------------+---------+---------------+--------------

  803515943941406094 | succeeded |                  1 | 99999 |       199999 | 4194200

指标差异的原因

  • 行数差异:备份统计的是包含内部元数据、临时记录或已标记删除但未彻底清理的 tombstone 行的总数;而恢复时系统会自动过滤这些非业务相关的行,只写入有效的业务数据行。
  • 索引条目数差异:备份时会原样保存所有索引的原始条目,包括一些冗余或待清理的索引垃圾;恢复过程中重建索引时,系统会自动清理这些冗余条目,所以索引条目数会略少。
  • 字节数差异:一方面恢复不会写入备份里的内部元数据、临时数据;另一方面恢复时数据库可能会对存储格式做细微优化(比如页对齐、压缩调整),导致字节数略有不同。

数据是否已全部恢复

只要恢复任务的状态是succeeded,且通过业务层面的验证(比如核对关键表的行数、查询核心业务数据确认匹配),就说明业务数据已经完整恢复。上述指标差异是CockroachDB备份恢复流程中的正常现象,不会影响实际业务数据的完整性。

内容的提问来源于stack exchange,提问作者Faizan Qazi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 14:54:21