天天看点

RAID各级别的特性

RAID:

Redundant Arrays of Inexpensive Disks(廉价磁盘冗余阵列)

           Independent独立磁盘冗余阵列

Berkeley:A case for RedundentArrays of Inexpensive Disks RAID

多个独立的物理硬盘按照不同的方式组合起来,形成一个虚拟的硬盘,来提升性能和冗余性;

能解决什么问题:

提高IO能力

多个磁盘并行读写来实现;RAID控制器高级产品有专用RAID内存、独立电源;

提高耐用性

磁盘冗余来实现;

RAID的优势

RAID在容量和管理上有优势

易于灵活容量扩容;

“虚拟化”使可管理性极大增强;

RAID在性能上的优势

“磁盘分块”技术带来性能的提高;

RAID在可靠性和可用性上的优势

通过冗余技术和热备、热换提升了可靠性;

RAID实现的方式:

外接式磁盘阵列;通过扩展卡提供适配能力,扩展卡称为Adapter适配器;

内接式RAID:主板集成RAID控制器

Software RAID:

RAID级别:仅用来标识磁盘组织形式

不同的RAID级别,多块磁盘组织在一起的工作方式有所不同;

不同的存储性能

RAID-0:0级别,条带卷,strip;

RAID-1:1级别,镜像卷,mirror;

...

RAID-5:

RAID-6:

RAID10:

RAID01:

RAID机制中也把文件划分为块,这里的块称为chunk;存储形式是把数据分散保存在不同的硬盘中

RAID-0的工作原理

是以条带形式将数据均匀分布在阵列的各个磁盘上;

<a href="http://s5.51cto.com/wyfs02/M01/7D/BA/wKiom1buj47ir_w3AADoTP2w3qQ906.png" target="_blank"></a>

特点:

磁盘数:最低2个;

优点:读、写性能提升,不存在校验,不会占太多cpu资源,设计、使用和配置比较简单;

缺点:无冗错能力,不能用于对数据安全性要求高的环境;

可用空间:N(硬盘个数)*min(S1,S2...取决于最小的硬盘的空间)

适用领域:视频生成和编辑、图形编辑,其它需要大的传输带宽的操作;

RAID-1工作原理:

以镜像为冗余方式,对虚拟磁盘上的数据做多份拷贝,放在成员磁盘上;

<a href="http://s4.51cto.com/wyfs02/M00/7D/BA/wKiom1buj7HRwikPAADIlYRHb-k065.png" target="_blank"></a>

磁盘数:最低2个,2n个,n大于等于1

优点:读性能提升、写性能略有下降,具有100%数据冗余,提供最高的数据安全保障理论上可实现2倍的读取效率设计和使用较简单;

缺点:开销大,空间利用率只有50%,在写性能方面提示不大;

有冗余能力

可用空间:1*min(S1,S2...由最小硬盘的空间决定)

适用领域:财务、金融等高可用、高安全的数据存储环境;

RAID-2

采用校验冗余

把数据分散为位或块,加入汉明码,间隔写入到磁盘阵列的每个磁盘中

在成员磁盘上的地址都一样

采用并行存取的方式

花费大,成本昂贵

RAID-3的工作原理

数据块被分为更小的块,并行传输到各个成员磁盘上,同时计算xor校验数据存放到专用的校验磁盘上;

xor算法:异或

相同为假,不同为真

<a href="http://s4.51cto.com/wyfs02/M00/7D/B7/wKioL1bukGTzBCAUAAEFUKl0nHQ690.png" target="_blank"></a>

磁盘数:最低3个

优点:读写性能都较好,当磁盘损坏时,对整体吞吐量影响较小,减少了开销;

缺点:控制器设计复杂,采用并行的存取方式,主轴同步时吞吐量没有提高,校验磁盘的写性能有瓶颈;

适用领域:视频生成和图像、视频编辑等;需要高吞吐量的应用环境;

RAID-4:

最少需要3块硬盘;

数据交叉存储在2块硬盘中,再由第3块硬盘存储数据的校验码;

校验码是由2块硬盘中的chunk块按位进行异或运算后的值而得;

其中1块硬盘坏了不影响文件数据读写操作,数据还可以恢复,但就是有些慢;即使坏了1块硬盘仍然继续在线工作时,称为降级模式,此时数据没有保障,风险较大;所以要马上用新硬盘替换坏硬盘,暂定业务,用2块可用盘进行计算,按位校验恢复数据到新硬盘即可,当所有数据都恢复到新硬盘后,就能继续正常工作了;但是万一在恢复过程中也是有风险的;

RAID4还有一个固有缺点:用单块盘作为存放校验码,无论前面哪块盘访问数据,校验盘都得被访问;即集中存放校验码的校验盘访问压力过大,很容易造成性能瓶颈;所以,尽早发现坏盘损坏,就能尽早更换;可以在接1块新硬盘当做空闲备用盘。

 异或运算,存储校验码:

例如:1101,0110按位校验,校验码为:1011      

RAID-5的工作原理

采用独立存取的阵列方式,校验信息被均匀的分散到阵列的各个磁盘上;

相对于RAID-4把校验码存放在一块硬盘上,而RAID-5是将3块盘循环轮流作存放校验码。左对称即校验码存放各盘的顺序是先在前2块盘存数据,第3块盘存校验码,依次类推,右对称相反。

<a href="http://s3.51cto.com/wyfs02/M01/7D/BB/wKiom1buj_Shq8uBAAD7ReVg7YE006.png" target="_blank"></a>

优点:读性能较高,中等的写性能,校验信息的分布方式存取,避免出现写操作的瓶颈;

缺点:控制器设计复杂,磁盘重建的过程比较复杂;

可用空间:(N-1)*min(S1,S2,...其中的最小空间)

有容错能力:1块磁盘

适用领域:文件服务器、email服务器、web服务器等环境,数据库应用;

RAID-6:用2块盘做校验盘,校验码存两次;

读、写性能提升;

可用空间:(N-2)*min(S1,S2,...其中最小空间)

有容错能力:2块磁盘;

最少磁盘数:4,4+

组合不同级别的RAID

组合不同级别的RAID的目的

从RAID0到RAID6,不同级别的RAID在性能、冗余、价格等方面做了不同传递的折中;

重点介绍:

RAID-10、RAID-01、RAID-50

RAID-10的工作原理

RAID10结合RAID1和RAID0,先镜像,再条带化;

<a href="http://s2.51cto.com/wyfs02/M01/7D/B7/wKioL1bukKLgvl7zAAFNz-9fM9I194.png" target="_blank"></a>

磁盘数:最低4个,2n个,n大于等于2;

优点:读性能很高,写性能比较好,数据安全性好,允许同时有N个磁盘失效;

缺点:利用率只有50%,开销大;

可用空间:N*min(S1,S2,...其中最小空间)/2;

有容错能力:每组镜像最多只能坏一块;

适用领域:多用于要求高可用性和高安全性的数据库应用;

RAID-01:

先分成两组做成RAID-0,再把组成的RAID-0做成RAID-1;不符合常用方法,每一组有一块坏的硬盘可能性大;

RAID-50的工作原理

是RAID5和RAID0的结合,先实现RAID5,再条带化;(先做RAID-5在做RAID-0,最少6块盘,每组允许坏1块盘,空间利用率灵活)、RAID7(某家公司的私有技术,实际是文件服务器)

<a href="http://s5.51cto.com/wyfs02/M02/7D/BB/wKiom1bukCyhdfkTAAGBwer2txc582.png" target="_blank"></a>

磁盘数:最低6个;

优点:比RAID5有更好的读性能,比相同容量的RAID5重建时间更短,可以容许N个磁盘同时失效;

缺点:设计复杂,比较难实现;同一个RAID5组内的两个磁盘失效会导致整个阵列失效;

适用领域:大型数据库服务器、应用服务器、文件服务器等应用;

JBOD:Just a Bunch ofDisks

将多块磁盘空间合并成一个大的连续空间使用;

可用空间:sum(S1+S2+,...磁盘空间之和)

常用RAID级别的比较:RAID-0,RAID-1,RAID-5,RAID-10,RAID-50,JBOD

RAID-0性能最好;

RAID-1冗余度最高;

相同可用容量下,RAID-1和RAID-10开销最高;

<a href="http://s4.51cto.com/wyfs02/M02/7D/B7/wKioL1bukN6xp_ugAAIYY-Rguj0268.png" target="_blank"></a>

本文转自 crystaleone 51CTO博客,原文链接:http://blog.51cto.com/linsj/1753197,如需转载请自行联系原作者