磁盘阵列(Redundant Arrays of Independent Disks,RAID),全称独立磁盘冗余阵列。
磁盘阵列是由很多廉价的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上。
利用同位检查(ParityCheck)的观念,在数组中任意一个硬盘故障时,仍可读出数据,在数据重构时,将数据经计算后重新置入新硬盘中。
相同的数据存储在多个硬盘的不同的地方的方法。通过把数据放在多个硬盘上(冗余),输入输出操作能以平衡的方式交叠,改良性能。因为多个硬盘增加了平均故障间隔时间(MTBF),储存冗余数据也增加了容错。
分类:
一是外接式磁盘阵列柜、二是内接式磁盘阵列卡,三是利用软件实现。
RAID实现的方式:
RAID 0,RAID 1, RAID2, RAID 3,RAID 4,RAID 5,RAID 6,RAID 7,RAID 01,RAID 10,RAID50,RAID 53。
常见的有:RAID 0,RAID 1,RAID 5,RAID 6,RAID 01,RAID 10。
原理剖析:
RAID 0:
RAID 0又称为Stripe或Striping,中文称之为条带化存储,它代表了所有RAID级别中最高的存储性能。
原理:
是把连续的数据分散到多个磁盘上存取,系统有数据请求就可以被多个磁盘并行的执行,每个磁盘执行属于它自己的那部分数据请求。这种数据上的并行操作可以充分利用总线的带宽,显著提高磁盘整体存取性能。
磁盘空间 = 磁盘总量 = 100%
需要的磁盘数 ≥ 2
读写性能= 优秀 = 磁盘个数(n)*I/O速度 = n*100%
块大小 = 每次写入的块大小 = 2的n次方 = 一般为2~512KB
优点:
1、 充分利用I/O总线性能使其带宽翻倍,读/写速度翻倍。
2、 充分利用磁盘空间,利用率为100%。
缺点:
1、 不提供数据冗余。
2、 无数据检验,不能保证数据的正确性。
3、 存在单点故障。
应用场景:
1、 对数据完整性要求不高的场景,如:日志存储,个人娱乐
2、 要求读写效率高,安全性能要求不高,如图像工作站
架构图:
RAID 1:
RAID 1又称为Mirror或者Mirroring,中文称之为镜像存储。RAID 1是磁盘阵列中单位成本最高的,磁盘利用率最低,但提供了很高的数据安全性和可用性。
原理:
将一个两块硬盘所构成RAID磁盘阵列,其容量仅等于一块硬盘的容量,因为另一块只是当作数据“镜像”通过镜像实现数据冗余,成对的独立磁盘上产生互为备份的数据。当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID 1可以提高读取性能。当一个磁盘失效时,系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。最大允许互为镜像内的单个磁盘故障,如果出现互为镜像的两块磁盘故障则数据丢失。
。
磁盘空间 = 磁盘总量/2 = 50%
需要的磁盘数(n) ≥ 2*n
读性能= 优秀 = I/O性能*n = 200%
写性能 = 正常 = I/O性能 = 100%
优点:
1、 提供数据冗余,数据双倍存储。
2、 提供良好的读性能
缺点:
1、 无数据校验
2、 磁盘利用率低,成本高
应用场景:
1、 存放重要数据,如数据存储领域
架构图:
RAID 2:
RAID 0 的优化版本
原理:
每次读写需要全组磁盘联动,,提供汉明码错误校验机制,将数据进行编码后分区为独立的位,并将数据分别写入硬盘中。因为在数据中加入了错误修正码,输出数据的速率与驱动器组中速度最慢的相等。
磁盘空间 ≤ 磁盘总量
需要的磁盘数 ≥ 3
数据单位 = 字节
优点:
1、 有数据校验机制
2、 磁盘的寻道时间减少
缺点:
1、 目前应用场景不多,基本被淘汰。
2、 成本高
应用场景:
影像处理或者CAD/CAM的工作站
架构图:
RAID 3:
类似于RAID 2 ,
原理:
采用Bit-interleaving(数据交错存储)技术,它需要通过编码再将数据位分区后分别存在硬盘中,而将同位检查后单独存在一个硬盘中,但由于数据内的位分散在不同的硬盘上,因此就算要读取一小段数据资料都可能需要所有的硬盘进行工作,所以这种规格比较适于读取大量数据时使用。
磁盘空间 = n-1
需要的磁盘数 ≥ n+1
数据单位 = 字节
写性能 = 一般
读性能 = 良好
优点:
1、有数据校验机制
缺点:
1、校验盘很容易成为整个系统的瓶颈
应用场景:
1、 写操作较少,读操作较多的应用环境,如:数据库、WEB服务器等。
2、 适合大文件类型且安全性要求较高的应用,如视频编辑、硬盘播出机、大型数据库等。
架构图:
RAID 4:
与RAID 3 类似
原理:
RAID4和RAID3很象,数据都是依次存储在多个硬盘之上,奇偶校验码存放在独立的奇偶校验盘上,唯一不同的是,在数据分割上RAID3对数据的访问是按位进行的,RAID4是以数据块为单位。
磁盘空间 = n-1
需要的磁盘数 ≥ n+1
写性能 = 差
读性能 = 正常
数据单位 = 块(扇区)
优点:
1、 按块存储可以保证块的完整
2、 有校验机制
缺点:
1、 写效率差,每次写入需要生成校验
2、 硬盘损耗高
应用场景:
对数据安全性能高的环境,通RAID3
架构图和RAID 3一致:
RAID 5:
奇偶校验(XOR),RAID 0和RAID 1的折中方案。
原理:
数据以块分段条带化存储。校验信息交叉地存储在所有的数据盘上。数据和相对应的奇偶校验信息存储到组成RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上,其中任意N-1块磁盘上都存储完整的数据
磁盘空间 = n-1
需要的磁盘数 ≥ 3
读写性能 ≈ 优秀 = 磁盘个数(n)*I/O速度 = n*100%
优点:
1、 读写性能高
2、 有校验机制
3、 磁盘空间利用率高
缺点:
1、磁盘越多安全性能越差
应用场景:
安全性高,如金融、数据库、存储等。
架构图:
RAID 6:
与RAID 5相比,RAID 6增加了第二个独立的奇偶校验信息块。双重奇偶校验
原理:
两个独立的奇偶系统使用不同的算法,数据的可靠性非常高,即使两块磁盘同时失效也不会影响数据的使用。但RAID 6需要分配给奇偶校验信息更大的磁盘空间,写性能比RAID5差。
磁盘空间 = n-2
需要的磁盘数 ≥ 4
优点:
1、 良好的随机读性能
2、 有校验机制
缺点:
1、 写入速度差
2、 成本高
应用场景:
对数据安全级别要求比较高的企业
架构图:
RAID 7:
RAID 7并非公开的RAID标准,而是Storage ComputerCorporation公司的专利硬体产品名称。是一个完整的存储阵列。RAID 7有自身的实时操作系统用来管理阵列。
原理:
1、 物理上RAID 7主要包括两部分:一个运行实时操作系统的控制器;二.多个Channel磁盘组。
2、 逻辑上 RAID 7类似于RAID3和RAID4。磁盘分布于多个Channel,一个Channel包含一组磁盘,校验盘可以分布于任意Channel。Channel之间通过X-BUS连接。
3、 异步IO。IO读写操作以及奇偶校验都直接在缓存里面完成。控制器负责数据从缓存写入磁盘。
4、 可以根据需求,将部分磁盘配置为Hot Standy模式。
5、 提供SNMP远程监控管理功能。
优点:
1、 性能好,IO延迟低
缺点:
1、成本高
应用场景:
对存储性能要求高且没有高端技术团队的公司
架构图:
RAID 01:
RAID 0和RAID 1的组合形式
原理:
先做RAID 0再将RAID 0组合成RAID 1,拥有两种RAID的特性。
磁盘空间= n/2 = 50%
4 ≥ 需要的磁盘数 ≥ 2*n
读写性能 = RAID0
优点:
1、 较高的IO性能
2、 有数据冗余
3、 无单点故障
缺点:
1、 成本稍高
2、 安全性比RAID 10 差
应用场景:
特别适用于既有大量数据需要存取,同时又对数据安全性要求严格的领域,如银行、金融、商业超市、仓储库房、各种档案管理等。
架构图:
RAID 10:
RAID 0和RAID 1的组合形式
原理:
先做RAID 1再将RAID 1组合成RAID 0,拥有两种RAID的特性,安全性能高。
磁盘空间= n/2 = 50%
4 ≤ 需要的磁盘数 ≥ 2*n
优点:
1、RAID10的读性能将优于RAID01
2、较高的IO性能
3、有数据冗余
4、无单点故障
5、安全性能高
缺点:
1、 成本稍高
应用场景:
特别适用于既有大量数据需要存取,同时又对数据安全性要求严格的领域,如银行、金融、商业超市、仓储库房、各种档案管理等。
架构图:
RAID 50:
RAID50也被称为镜象阵列条带
原理:
先做RAID 5再将RAID 5组合成RAID 0,拥有两种RAID的特性。
需要的磁盘数 ≥ 6
RAID 53:
一个镜射条带数组,硬盘里其中一个条带就是一个是由3组以上的RAID 5组成RAID 3硬盘阵列
原理:
先做RAID 5再将RAID 5组合成RAID 3,拥有两种RAID的特性。
需要的磁盘数 ≥ 6+1