主流RAID简介

1、      RAID概述

RAID技术是由美国加州大学伯克利分校D.A. Patterson教授在1988年提出的,做为高性能、高可靠的存储技术,在今天已经获得了普遍的应用。数据库

RAID是Redundant Array of Inexpensive Disks(中文直译为廉价磁盘冗余阵列)的缩写,是将一系列单独的磁盘以不一样的方式组合起来,为一个应用主机或主机集群提供一个逻辑上的磁盘。使用RAID的好处是可以扩大磁盘容量、提升磁盘读取的性能和数据的安全性。缓存

2、      RAID的级别

RAID技术通过不断的发展,如今已拥有了从RAID-0到RAID-5的6种明确标准级别的RAID级别。另外,其余还有RAID-六、RAID-七、RAID-10(RAID-1与RAID-0的组合)、RAID-01(RAID-0与RAID-1的组合)、RAID-30(RAID3与RAID-0的组合)、RAID-50(RAID-5与RAID-0的组合)等。安全

不一样RAID级别表明着不一样的存储性能、数据安全性和存储成本,下面咱们将重点介绍下ZLHIS服务器部署中最常使用的RAID级别:RAID-0、RAID-一、RAID-5 、RAID-10。服务器

l  RAID-0

RAID-0全称叫作Striped  Disk  Array without  Fault  Tolerance(没有容错设计的条带磁盘阵列),从图中能够看出,RAID-0在存储数据时由RAID控制器(硬件或软件)分割成大小相同的数据条,同时写入阵列中的磁盘。若是发挥一下想象力,你会以为数据像一条带子横跨过全部的阵列磁盘,每一个磁盘上的条带深度则是同样的。至于每一个条带的深度则要看所采用的RAID 类型,在NT系统的软RAID-0等级中,每一个条带深度只有64KB一种选项,而在硬RAID-0等级,能够提供八、1六、3二、64以及128KB等多种深度参数。Striped是RAID的一种典型方式,在不少RAID术语解释中,都把Striped  指向RAID-0。在读取时,也是顺序从阵列磁盘中读取后再由RAID控制器进行组合再传送给系统,这也是RAID 的一个最重要的特色。并发

 

这样,数据就等于并行的写入和读取,从而很是有助于提升存储系统的性能。对于两个硬盘的RAID-0系统,提升一倍的读写性能可能有些夸张,毕竟也要考虑到同时增长的数据分割与组合等与RAID相关的操做处理时间,但比单个硬盘提升80%的性能是彻底能够的。性能

不过,RAID-0还不能算是真正的RAID,由于它没有数据冗余能力。因为没有备份或校验恢复设计,在RAID-0阵列中任何一个硬盘损坏就可致使整个阵列数据的损坏,由于数据都是分布存储的。下面总结一下RAID-0的特色:优化

至少须要磁盘数spa

2设计

优势日志

缺点

ü  极高的磁盘读写效率

ü  没有校验所占用的CPU资源

ü  设计、使用与配置简单

²  缺少校验恢复机制而不是真正的RAID

²  没有数据容错能力,一(磁盘)毁俱(整个阵列)毁

²  较为困难的数据重建操做

²  不可能用于任何苛求的环境

适用领域

ü  视频生成与编辑

ü  图像编辑

ü  较为“拥挤”的操做

ü  其余须要大的传输带宽的操做

l  RAID-1

RAID-1全称叫Mirroring and Duplexing(相互镜像)。

RAID-1以镜像做为冗余手段,虚拟磁盘中的数据有多个拷贝,放在成员磁盘上。如图。

 

RAID-1在写入数据时,RAID控制器并非将数据分红条带而是将数据同时写入两个硬盘。这样,其中任何一个硬盘的数据出现问题,能够立刻从另外一个硬盘中进行恢复。注意,这两个硬盘并非主从关系,而是相互镜像/恢复的。

RAID-1已经能够算是一种真正的RAID系统,它提供了强有力的数据容错能力,但这是由一个硬盘的闲置的代价所带来的效果,而这个硬盘并不能增长整个阵列的有效容量。下面总结一下RAID-1 的特色:

至少须要磁盘数

2

优势

缺点

ü  理论上两倍的读取效率

ü  100%的数据冗余功能

ü  设计、使用与配置较为简单

²  错误校验效率低下,磁盘校验过程当中CPU占用率是全部RAID等级中最高的

²  在软RAID-1中效能降低严重,强烈推荐硬RAID-1方式

²  在软RAID-1方式中不多能支持磁盘的热插拔

适用领域

ü  财务统计与数据库

ü  金融系统

ü  其余须要高度数据可维护性的操做

l  RAID-5

RAID-5的机制是数据校验的信息被均匀的分散到的阵列的各个磁盘上,这样就不存在并发写操做时的校验盘性能瓶颈。阵列的磁盘上既有数据,也有数据校验信息,数据块和对应的校验信息会存储于不一样的磁盘上,当一个数据盘损坏时,系统能够根据同一带区的其余数据块和对应的校验信息来重构损坏的数据。

 

RAID-5能够理解为是RAID-0和RAID-1的折衷方案。RAID-5能够为系统提供数据安全保障,但保障程度要比RAID-1低而磁盘空间利用率要比RAID-1高。RAID-5具备和RAID-0相近似的数据读取速度,只是多了一个奇偶校验信息,写入数据的速度比对单个磁盘进行写入操做稍慢。同时因为多个数据对应一个奇偶校验信息,RAID-5的磁盘空间利用率要比RAID-1高,存储成本相对较低。

RAID-5在数据盘损坏时的状况和RAID 3类似,因为须要重构数据,性能会受到影响。

下面总结一下RAID-5的特色:

至少须要磁盘数

3

优势

缺点

ü  高读取速率

ü  中等写速率

²  磁盘损坏会影响系统的吞吐量

²  控制器设计复杂

²  磁盘损坏后,重建很复杂

适用领域

ü  适合文件服务器和应用服务器

ü  OLTP环境的数据库

 

l  RAID-10

RAID-10也是RAID-1和RAID-0的结合,也称为RAID(0+1),条带化后为每个条带提供镜像,既提升了系统的读写性能,有提供了数据冗余保护,RAID-10的磁盘空间利用率和RAID-1是同样的,为50%。RAID-10适用于既有大量的数据须要存储,有对数据安全性有严格要求的领域,好比金融,证券等。

 

下面总结一下RAID-10的特色:

至少须要磁盘数

3

优势

缺点

ü  高读取速率

ü  中等写速率

²  磁盘损坏会影响系统的吞吐量

²  控制器设计复杂

²  磁盘损坏后,重建很复杂

适用领域

ü  适合文件服务器和应用服务器

ü  OLTP环境的数据库

 

3、      RAID之间的区别

在各个RAID级别中,使用最普遍的是RAID-0,RAID-1,RAID-5,RAID-10,以下是从容量、冗余性以及性能方面对这几种典型RAID类型进行比较。

RAID-0,将数据分红条带顺序写入一组磁盘中。RAID-0不提供冗余功能,可是它却提供了卓越的吞吐性能,由于读写数据是在一组磁盘中的每一个磁盘上同时处理的,吞吐性能远远超过单个磁盘的读写。

RAID-1,每次写操做都将分别写两份到数据盘和校验盘上,每对数据盘和校验盘成为镜像磁盘组。也可以使用并发的方式来读数据时,提升吞吐性能。若是镜像磁盘组中某个磁盘出错,则数据能够从另一块磁盘得到,而不会影响系统的性能,而后,使用一块备用磁盘将健康磁盘中的数据复制出来而后这两块磁盘又组成新的镜像组。

RAID-10,即RAID-1 与RAID-0 的结合,既作镜像又作条带化,数据先镜像再作条带化。这样数据存储既保证了可靠性,又极大地提升了吞吐性能。

RAID-5 是将数据校验循环分散到各个磁盘中,它像RAID-0同样将数据条带化分散写到一组磁盘中,但同时它生成校验数据做为冗余和容错使用。校验磁盘包含了全部条带的数据的校验信息。RAID-5将校验信息轮流地写入条带磁盘组的各个磁盘中,即每一个磁盘上既有数据信息又同时有校验信息,RAID-5 的性能得益于数据的条带化,可是某个磁盘的失败却将引发整个系统的降低,这是由于系统将在承担读写任务的同时,从新构建和计算出失败磁盘上的数据,此时要使用备用磁盘对失败磁盘的数据重建恢复整个系统的健康。

从ZLHIS应用来说,要求存储系统具备良好的IO性能同时也要求对数据安全作好保护工做,因此我应该重点关注冗余安全性相对较高的RAID-10和RAID-5。

l  IO的性能

读操做上RAID10和RAID5是至关的,RAID-5在一些很小数据的写操做(如比每一个条带还小的小数据)须要2个读、2个写,还有2个XOR 操做,对于单个用户的写操做,在新数据应用以前必须将老的数据从校验盘中移除,整个的执行过程是这样:读出旧数据,旧数据与新数据作XOR,并建立一个即时的值,读出旧数据的校验信息,将即时值与校验数据进行XOR,最后写下新的校验信息。为了减小对系统的影响,大多数的RAID5  都读出并将整个条带(包括校验条带)写入缓存,执行2个XOR 操做,而后发出并行写操做(一般对整个条带),即使了进行了上述优化,系统仍然须要为这种写操做进行额外的读和XOR操做。小量写操做困难使得RAID-5  技术不多应用于密集写操做的场合,如回滚字段及重作日志。固然,也能够将存储系统的条带大小定义为常常读写动做的数据大小,使之匹配,但这样会限制系统的灵活性,也不适用于企业中其它的应用。

对于RAID10,因为不存在数据校验,每次写操做只是单纯的执行写操做。所以在写性能上RAID10要好于RAID5。

l  数据安全保护

RAID10系统在已有一块磁盘失效的状况下,只有出现该失效磁盘的对应镜像盘也失效,才会致使数据丢失。其余的磁盘失效不会出现数据丢失状况。

RAID5系统在已有一块磁盘失效的状况下,只要再出现任意的一块磁盘失效,都将致使数据丢失。

从综合来看,RAID10和RAID5系统在出现一块磁盘失效后,进行数据重构时,RAID5需耗费的时间要比RAID10长,同时重构期间系统负荷上RAID5要比RAID10高,同时RAID5出现数据丢失的可能性要比RAID10高,所以,数据重构期间,RAID5系统的可靠性远比RAID10来的低。

RAID5在磁盘空间率用率上比RAID10高,RAID5的空间利用率是(N-1)/ N      (N为阵列的磁盘数目),而RAID10的磁盘空间利用率仅为50%。

可是结合磁盘来考虑,今天的硬盘厂商所生产的ATA或SATA硬盘的质量已经能够承担企业级的应用,而且,容量的增长幅度至关大,目前已经能够实现单个磁盘400G的存储容量。SCSI硬盘因为要求高转速而使用小直径盘片,容量的增长相对缓慢。ATA磁盘相对SCSI磁盘拥有成本也要小不少。

应此,在采用价格昂贵的FC或SCSI硬盘的存储系统中,对于预算有限同时数据安全性要求不高的场合能够采用RAID5方式来折中;其余应用中采用大容量的ATA或SATA硬盘结合RAID10,既下降了RAID10的为得到必定的存储空间必须采用双倍磁盘空间的拥有成本,又避免了RAID5相对RAID10的各类缺点。

RAID级别

有效容量

顺序读写性能

随机读写性能

直接磁盘

n

6

6

4

4

RAID-0

n

10

10

10

10

RAID-1

n/2

7

5

6

3

RAID-5

n-1

7

7

7

4

RAID-10

n/2

10

9

7

6

相关文章
相关标签/搜索