目前主流的磁盘阵列RAID主要有以下几种:RAID0、RAID1、RAID5、RAID6、RAID10。

目前有两类RAID,软RAID和硬RAID。对于硬RAID,可以通过磁盘阵列卡去组RAID;对于软RAID也就是通过软件实现的RAID,比如目前市面主流的NAS就是通过软RAID实现的。

下面的假设都是:如果有N块硬盘,空间均为1TB,速率为100M/s,用来组成RAID阵列。

RAID0:RAID0的总空间可以为N TB,速率可以为100N M/s,空间利用率100%,速率可以多盘累加。RAID0的空间利用率100%,速率也达到最高,问题在于数据不存在有备份,安全性存疑,不适合存重要数据,只要坏掉1块硬盘,数据就全丢失掉。

RAID1:RAID1需要至少2块磁盘,N块磁盘组RAID1的总空间可以只能为1TB,速率也只能为100M/s,其中N-1块盘都是镜像盘。RAID1的空间利用率为1/N,速率为100M/s,数据存在有N-1份的镜像,可以保证数据足够安全,就算N-1块硬盘坏掉,数据都是完整的。

RAID5:RAID5至少需要3块硬盘,N块硬盘组成的RAID5总空间为(N-1)TB,另外一块硬盘的空间将会用于存放奇偶检验码,其实是N块硬盘,每块硬盘上会存放一些奇偶检验码,只是总共占用1TB的空间用作奇偶检验,相当于是总共(N-1)TB的数据可用,可以允许坏掉1块硬盘,数据都会是完整的

RAID6:RAID6至少需要4块硬盘(推荐6块以上硬盘),RAID6和RAID5类似,使用两块硬盘的空间用于奇偶检验码的存放,可以允许坏掉2块硬盘,数据都会是完整的

RAID10:使用RAID1和RAID0组合而成,至少需要4块硬盘,其实很像分布式系统的集群模式,比如Redis的集群模式,RAID10阵列的可用的总存储空间最大可以达到N/2 TB。

  • 以4块硬盘A、B、C、D举例,RAID10会将A和B组成RAID1、C和D组成RAID1,最后再将两组RAID1组合成为RAID0。
  • 如果是6块硬盘,可以是三组RAID1,每组RAID1两块硬盘,然后这三组RAID1再组成RAID0;也可以是2组RAID1,每组RAID1三块硬盘,然后两组RAID1再组成RAID0。