首页/系统/服务器硬件与 RAID 速查/URE 与 RAID 5 大容量盘的重建风险
RAID 级别与计算68 条

URE 与 RAID 5 大容量盘的重建风险

硬盘的不可恢复读错误率(URE)以每读取多少比特出现一次坏块衡量:消费级常见 1e14,企业级 1e15。单盘容量越大、重建读取的数据越多,撞上坏块的概率越高。

URE 是什么

URE 指不可恢复读错误率(Unrecoverable Read Error rate),厂商用「每读取多少比特出现一次不可恢复错误」来衡量:消费级盘常见 1e14,企业级盘常见 1e15。它描述的是单块盘在正常读取过程中撞上无法纠正的坏块的概率。RAID 5 重建必须读遍除故障盘以外的所有成员盘,读取量约等于单盘容量乘以剩余盘数,因此单盘容量越大、盘数越多,重建期间撞上 URE 的概率越高。一旦在 RAID 5 上撞到,没有第二组校验可用,重建会失败。

基本信息

单位含义每读取 N 比特出现一次不可恢复读错误,N 越大越好
常见数值消费级 1e14,企业级 1e15(相差一个量级)
重建读取量约等于单盘容量 × 参与重建的盘数
影响对象RAID 5 最严重(单组校验),RAID 6 次之(仍有第二组校验可依)
缓解手段定期校验巡检、选企业级盘、大容量盘用 RAID 6 或 RAID 10

重建读取量与撞错概率(模型估算)

单盘容量读取比特数1e14 盘1e15 盘
2TB1.6e13约 16%约 1.6%
8TB6.4e13约 64%约 6.4%
16TB1.3e14>100%约 13%

查看盘上已记录的读错误

查看盘上已记录的读错误
smartctl -a /dev/sdb | grep -i -E "read|error|uncorrect"      # 读错误与不可纠正计数
smartctl -A /dev/sdb | grep -Ei "Reallocated|Pending|Offline_Uncorrectable"
smartctl -l error /dev/sdb | head -30                          # 错误日志明细
# 阵列侧交叉核对
storcli /c0/eall/sall show | grep -Ei "Media Error|Other Error|Fail"

降低撞错概率的四个办法

  • 上 RAID 6:多一组校验,撞到单个坏块时仍能重建出数据
  • 坚持定期校验巡检(scrub / patrol read):坏块在盘还健康时被提前发现并重映射
  • 选企业级盘:1e15 与 1e14 在 8TB 级盘上的差距是数量级的
  • 缩短重建窗口:配热备、调高重建速率、降低重建期业务负载,让读取集中、快速完成
RAID 5 只有一组校验:重建中撞上 URE 即重建失败;RAID 6 因双校验可再承受一次问题块。这也是大容量盘时代方案向 RAID 6 倾斜的原因之一。

易错点

  • 把厂商 URE 指标当绝对保证:实际盘的坏块分布与出厂筛选情况各异,模型只用于风险对比
  • 忽略定期巡检的价值:提前发现并隔离坏块是降低重建撞错概率最便宜的手段
  • 用 1e15 的企业盘指标去论证「RAID 5 也安全」:模型估算的是概率,真实故障往往叠加链路、温度与批次因素
  • 只看单盘容量不看盘数:盘数越多参与重建的盘越多,累计读取量随之上升
  • 把 RAID 当唯一防线:撞错导致的数据丢失最终仍需备份兜底,RAID 不能替代备份

数据来源与参考

  • Seagate/WD 企业盘规格书(URE 指标)
  • 《The RAID Book》(重建风险分析)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌