RAID(Redundant array of inexpensive disk)通过给磁盘阵列增加冗余磁盘提高了磁盘阵列的可靠性。
所谓冗余磁盘,即该磁盘不用于存放实际数据,而用来存放一些冗余信息,而这些冗余信息可用来在必要的时候进行有效数据恢复,从而增加磁盘阵列的可靠性,翻译成中文应该叫廉价磁盘冗余阵列。
随着磁盘阵列(RAID)技术的不断发展,磁盘阵列技术已经拥有多个基本的技术级别,大致可分为 RAID0、RAID1、RAID2、RAID3、RAID4、RAID5、RAID6、RAID7、RAID10、RAID50、RAID53、RAID5E等,每个级别的磁盘阵列技术有着不同的技术原理。
本文将着重介绍RAID 5 和 RAID 6 ,虽然都是用于数据存储的冗余磁盘阵列配置技术,它们有一些相似之处,但也存在重要的区别。
我们先比较一下他们之间的重要区别:
RAID 5 需要至少三块磁盘来配置。数据被分散并分别存储在这些磁盘上,而且每个磁盘都包含部分数据和奇偶校验信息。
RAID 6 需要至少四块磁盘来配置。类似于RAID 5,数据也被分散存储在这些磁盘上,但与 RAID 5 不同,RAID 6 使用了两组奇偶校验信息,可以说是RAID 5模式的加强版。
RAID 5 使用单个奇偶校验块来提供冗余容错能力。这意味着如果一块磁盘发生故障,数据可以被重建。但是不能两块磁盘同时故障。
RAID 6 在资料储存上,它会针对每一个要储存的档案来产生「两份」相对应的奇偶校 验信息,因此它可以在两颗硬盘同时故障时,在替换的两颗新硬盘里分别还原出原有的资料,来提供比RAID 5模式更高的资料储存安全性。
RAID 5 在磁盘中存储的数据量为 (N-1) * S,其中 N 为磁盘数量,S 为每块磁盘的容量。因为一个磁盘用于奇偶校验,所以总容量中有一个磁盘的容量用于冗余。
RAID 6 在磁盘中存储的数据量为 (N-2) * S,因为两块磁盘用于奇偶校验,所以总容量中有两块磁盘的容量用于冗余。
RAID 5 通常比 RAID 6 更高效,因为它只需要计算和写入单个奇偶校验块。
RAID 6 在写入数据时需要计算和写入两个奇偶校验块,因此在写入性能上可能稍逊于 RAID 5。
RAID 5的成本通常比RAID 6低,因为它需要更少的磁盘。
RAID 6的成本略高,因为它需要更多的磁盘,但它提供了更高的冗余容错能力。
比较RAID5和RAID6,说明需求的特殊性,最佳方向只有这两个阵列方式是最好的。而具体要选择使用 RAID 5 还是 RAID 6 ,最终将取决于您的特定需求和预算。
在不考虑成本的情况下,如果您需要更高的冗余容错能力,可以容忍更多的磁盘,那么 RAID 6 是一个更好的选择。
如果成本是一个重要因素,而且您可以容忍较低的冗余容错能力,那么 RAID 5 可能更合适。
但是除了以上两个方案外,还有其他更好的选择吗?
有的。具体我们来看如下案例分析:
需求场景需要的磁盘都是小容量的磁盘,比如只有300G或者500G,但是又需要具备冗余容错能力。考虑到当磁盘故障时,数据重建的时间要求,300G的磁盘重建时间大约需要3-5小时。
考虑到磁盘重建完成前,是否会发生第二块磁盘故障,进而导致阵列异常,数据全部丢失?因为3-5小时内第二块磁盘故障的风险其实并不是很高,在可接受范围内时,300G磁盘组建阵列需求,可以考虑采用RAID5。
需求场景需要的磁盘都是 大容量的磁盘,以4T以上容量的磁盘为例,单纯考虑成本,无疑是RAID5,但是若是要在成本和冗余容错找到平衡,则要考虑采用RAID6。
在安装初期,磁盘都为新盘,故障率会很低。但是若考虑到使用年限达5年以上时,因单一磁盘故障,进入数据重建,重建时间会很长,如果硬件性能较差,时间长达10天+,这种情况出现第二块磁盘故障几率会大大提高。如果仍然采用RAID5,数据丢失的风险会很大,必须要考虑采用RAID6增加冗余容错能力。
希望以上案例可以帮助分析采用RAID5 OR RAID6的最佳选择方案。