如何看待 “RAID 6 在 2019 停止”的预测?

如何看待 “RAID 6 在 2019 停止”的预测?

作者的预测我认为是有问题的。

RAID5的重建失败概率,在单盘容量进入TB级别之后的确是无法完全忽略。这个我本人也写过文章,也做过回答:

然而RAID 5之所以单盘损坏后无法重建,是因为URE,导致无法计算出损坏硬盘上的数据。而对于RAID6,则不存在这个问题——因为RAID 6阵列单盘损坏之后,降级为RAID 5,还是有冗余的。对于存在冗余校验数据的RAID 5阵列来说,推算出因为URE损坏导致无法读取的扇区数据,这是很正常的事情。不管是各大RAID卡品牌,还是主板/操作系统提供的软RAID 5,都有巡检功能,目的就是在RAID 5正常的时候,对URE扇区进行修复。网上流传的硬盘质量一致性,更多的原因在于RAID 5重建过程中出错——这是URE的锅。

当然,不是说有冗余,就100%能修复,如果刚好倒霉到,完好的N-1个硬盘中,在恢复某个条带中出现2个或者2个以上URE,那是必然要挂的。然而通常RAID的一个条带大小通常不会超过512KiB=4M bit,同时出现2个出现概率为1e-14(按照最不安全的消费级硬盘来算)的读取错误,这个概率完全可以忽略不计了。

另外一种情况,就是同时坏了两个硬盘,或者在重建过程中又挂了一块硬盘,并且再次碰到URE导致重建失败。从容量来说,大于12TB可用容量的RAID 6阵列出现URE的概率并不低,然而同时坏两块硬盘或者在重建过程中再坏了一块硬盘——注意,是纯粹的损坏,不是RAID 5重建中出现URE导致RAID卡认为的损坏。按照单盘8TB容量,重建速度平均20MB/s(相当慢了)大概需要4天半完成重建。按照谷歌数据中心的报告,一般硬盘每年的故障率不会超过10%,即使是已经用了3年的硬盘[1],我们可以假设一周内的故障率大概是0.2%,一个24盘RAID6在一周内损坏第二块硬盘的概率为:

换句话说,一个8TB×24的RAID 6阵列(可以用消费级硬盘),重建失败的概率大概和2TB×4或者1TB×8的RAID 5阵列(还必须是企业级硬盘或者高端桌面硬盘)相近。

[1]:Failure Trends in a Large Disk Drive Population(需要和谐上网,AFR数据截图如下)