RAID 6 的双校验是什么
RAID 6 在 RAID 5 的 P 校验之外增加了一组独立的 Q 校验:P 基于异或,Q 基于伽罗瓦域 GF(2^8) 上的乘法系数。两套方程相互独立,因此任意两块盘同时故障都能解出原始数据,这就是 RAID 6 的容错来源。代价是每次写要更新两组校验,随机写与重建的负担都高于 RAID 5。
校验公式
| P 校验 | D1 ⊕ D2 ⊕ … ⊕ Dn |
|---|---|
| Q 校验 | g^0·D1 ⊕ g^1·D2 ⊕ … ⊕ g^(n-1)·Dn(GF(2^8) 运算) |
| 意义 | 两条独立线性方程,可解两个未知数,因此容忍两盘故障 |
| 开销 | 每次写需更新 P 与 Q 两组校验,计算量约为 RAID 5 的 1.5 到 2 倍 |
RAID 5 与 RAID 6 对照
| 维度 | RAID 5 | RAID 6 |
|---|---|---|
| 校验盘数 | 1 块(分布在各盘) | 2 块(分布在各盘) |
| 容错能力 | 任意 1 块盘故障 | 任意 2 块盘故障 |
| 可用容量 | (N-1) x 单盘容量 | (N-2) x 单盘容量 |
| 重建风险 | 大容量盘重建窗口内风险高 | 重建期间仍有一块冗余余量 |
查看阵列的级别与校验布局
查看阵列的级别与校验布局
storcli /c0/v0 show all | grep -i -E "raid|drives" # 级别与成员盘
storcli /c0/v0 show cc # 一致性检查进度
storcli /c0/vall show all | grep -i -E "RAID|State" # 状态是否保持 Optimal
storcli /c0 show events | tail -30 # 是否有盘被剔除的记录典型使用场景
- 大容量归档阵列:单盘容量大、重建时间长,双校验能扛住第二个盘故障
- 近线存储与备份目标:顺序写为主,RAID 6 的校验开销可接受
- 无人值守机房:现场响应慢,需要更长的可容忍故障窗口
- 盘数较多的阵列:成员盘越多,双盘故障概率越高,RAID 6 更合适
- 重要但非极致性能业务:用少量写性能换取更高的数据可用性
RAID 6 计算量约为 RAID 5 的 1.5 到 2 倍,卡上芯片与固件质量直接影响随机写表现。
RAID 6 的两块冗余不是把重建时间缩短,而是把「重建期间又坏一块」的后果从数据丢失降级为仍可恢复;重建限速与巡检节奏依然要规划。
选型考虑点
- 单盘容量越大、重建越久,双校验的价值越明显
- 写密集型业务优先评估 RAID 10 或带缓存的方案
- 成员盘数量增加时同步评估故障域与背板布局
- 配套规划重建限速与巡检周期,避免长期处于高风险窗口