RAID类型性能比较完整版

在磁盘阵列性能的两个要素(磁盘空间和IOPS)都有很大影响的是磁盘阵列的组建类型(即RAID类型)。而在我们的日常工作中,常用的RAID类型为:RAID0 (没有奇偶检验的条带卷)、RAID1(镜像卷)、RAID5(带有奇偶检验的条带卷)、RAID10 (镜像的条带卷)。同时简单介绍最新还有一种RAID类型是RAID6.
 

1常见RAID类型的比较

常见RAID类型的比较
类型
原理
容错性
备份冗余
可用容量
I/O性能
数据重构
数据安全
RAID0
将数据分成一定大小顺序写到阵列的磁盘里
N
读写高
不能
 无
RAID1
将数据完全一致的分别写到工作磁盘和镜像磁盘上
n/2
读高写一般
1块磁盘
 低
RAID5
将数据校验的信息均匀的分散到阵列的各个磁盘上。这样就不存在并发写操作时的校验磁盘性能瓶颈
(n-1)/n
读高写低
n-1块磁盘
 低
RAID10
RAID1RAID0的结合
n/2
读写高
1块磁盘
 高
 

1.1  IO性能

 读性能 
RAID0 N块磁盘的读速率,RAID5(n-1)块磁盘读速率。
因为在RAID1中寻道一般能跨越组内所有磁盘进行。这意味着RAID1可获得两倍于单一磁盘的读取速度。同理得RAID10N块磁盘的读速率。
 
  写性能
   对于写操作,RAID 10RAID1类型都会产生一个额外的读操作。
对于写操作,RAID5需要执行两个读,两个写和两个XOR(异或检验)操作。另外对于单个用户的写操作,在新数据应用之前必须将老的数据从校验盘中移除,整个的执行过程是如下:读出旧数据,旧数据与新数据做XOR,并创建一个即时的值,读出旧数据的校验信息,将即时值与检验数据进行XOR,最后写下新的校验信息。为了减少对系统的影响,大多数的RAID5都读出并对整个条带(包括校验条带)写入缓存,执行两个XOR操作,然后发出并行写操作(通常对整个条带)。小数据量写操作的巨大使得RAID5技术很应用于密集写操作的场合,如重做日志文件和日志文件。
 
每块磁盘I/O计算如下:(n为磁盘个数)
RAID0  (r+w)/n
RAID1   (r+2w)/2
RAID5    (r+4w)/n
RAID10  (r+2w)/n
 

1.2数据重构

对于RAID10RAID1,当一块硬盘失效时,进行数据重构的操作是复制一个新磁盘。
对于RAID5,需要从每块磁盘中读取数据,经过重新计算得到一块硬盘的数据量。因此RAID5在数据重构上的工作负荷和花费的时间远大于RAID10RAID1.
 

1.3数据安全保护

RAID10(先做RAID1,再做RAID0)只要不出现成对磁盘损坏的情况,整个系统不会出现数据丢失。
RAID5不能出现两块损坏的磁盘,但由于数据重构时间和开销比RAID10高,在数据重构期间RAID5的可靠性比RAID10低。所以RAID5出现数据的丢失的可能性要比RAID10高,
 

2 RAID6

RAID 6的全称是独立的数据库硬盘与两个独立分布检验方案。实现这个思想的方法之一是用两个校验磁盘支持数据磁盘,第一个校验支持一种校验算法,而第二个磁盘支持另一种校验算法,第二算法也称为P+Q检验。
 

3 RAID 10RAID01的分别

对于RAID01,当一个磁盘损坏等同于整个镜像条带的丢失,所以一旦镜像磁盘失效,RAID01系统就为了RAID0系统,增加了潜在的风险。另外RAID01数据是按整个条带进行重构,存在与RAID5数据重构一样的风险。因此强烈要求不架设RAID01的镜像的条带卷。
 
(以上内容参考《成就存储专家之路---存储从入门到精通》)