1 RAID磁盘阵列介绍
独立硬盘冗余阵列(RAID, Redundant Array of Independent Disks),旧称廉价磁盘冗余阵列(Redundant Array of Inexpensive Disks),简称磁盘阵列。利用虚拟化存储技术把多个物理硬盘按不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和提供数据备份技术。
组成磁盘阵列的不同方式称为RAID级别(RAID Levels)。RAID 层级不同,数据会以多种模式分散于各个硬盘,RAID 层级的命名会以 RAID 开头并带数字。每种等级都有其理论上的优缺点,不同的等级在两个目标间获取平衡,分别是增加数据可靠性以及增加存储器群)读写性能
常用的RAID级别:
- RAID0、RAID1、RAID5、RAID6、RAID1+0等。
RAID技术主要有以下三个基本功能:
- 通过对磁盘上的数据进行条带化,实现对数据成块存取,减少磁盘的机械寻道时间,提高了数据存取速度。
- 通过对一个阵列中的几块磁盘同时读取,减少了磁盘的机械寻道时间,提高数据存取速度。
- 通过镜像或者存储奇偶校验信息的方式,实现了对数据的冗余保护。
RAID实现的方式
- 外接式磁盘阵列:通过扩展卡提供适配能力
- 内接式RAID:主板集成RAID控制器,安装OS前在BIOS里配置
- 软件RAID:通过OS实现,比如:群晖的NAS
2 RAID级别详解
2.1 RAID-0(无冗错的数据条带)
- RAID-0是N块硬盘并行组合成一个新的逻辑盘。
- RAID-0 连续以位或字节为单位分割数据,并行读写于多个磁盘上,因此具有很高的数据传输率,但它没有数据冗余。
- RAID-0 的读写性能理论上是单块磁盘的N倍。(仅限理论,因为实际中磁盘的寻址时间也是性能占用的大头)
- RAID-0 只是单纯地提高性能,并没有为数据的可靠性提供保证,而且其中的一个磁盘失效将影响到所有数据。
- RAID-0 不能应用于数据安全性要求高的场合。实际工作中一般不用。
网络异常,图片无法展示
|
2.2 RAID-1(无校验的相互镜像)
- RAID-1是由N(偶数)块硬盘组合成一组镜像。
- 通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据。
- 当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID1 可以提高读取性能。写入性能慢。
- RAID-1是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当一个磁盘失效时,系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。
- 可用容量:N/2 (N是硬盘数)
- 实际空间使用率只有50%,两块磁盘当做一块用,这是一种比较昂贵的方案。 实际工作中一般也不使用。
网络异常,图片无法展示
|
注意:
RAID可防物理损坏,但如果人为破坏,例如删除一边的A1数据,另一边的A1也会删除。所以安全起见还是要另做备份。
思考:
- 现由2块硬盘组成的RAID1,一块容量2T,另一块容量1T,则该RAID1可用容量是多少?
- 可用容量1T。按最小硬盘容量计算。
故在实际工作中,组成磁盘阵列的硬盘容量需尽量保持一致。
2.3 RAID-5( 带分散校验的数据条带)
- N(N≥3)块盘组成阵列,一份数据产生N-1个条带,同时还有1份校验数据,共N份数据在N块盘上循环均衡存储。
- N块盘同时读写,读性能很高,但由于有校验机制的问题,写性能相对不高。
- 可靠性高,允许坏1块盘,不影响所有数据。
- 可用容量:N-1。磁盘利用率(N-1)/N。
- RAID-5 是一种将存储性能、数据安全、存储成本兼顾的方案。是目前使用的最多的一种方式。
网络异常,图片无法展示
|
2.4 RAID-6( 带双重分散校验的数据条带)
- N(N≥4)块盘组成阵列,(N-2)/N磁盘利用率。
- 与RAID-5 相比,RAID6增加了第二个独立的奇偶校验信息块。
- 两个独立的奇偶系统使用不同的算法,即使两块磁盘同时失效也不会影响数据的使用。
- 相对于RAID-5 有更大的”写损失“,因此写性能较差。
网络异常,图片无法展示
|
2.5 RAID-10(先做镜像,再做条带化)
- N(偶数,N≥4)块盘两两镜像后,再组合成一个RAID0。(先组成RAID1,再组成RAID0)
- 可用容量:N/2。磁盘利用率50%。
- N/2块盘同时写入,N块盘同时读取。
- 性能高,可靠性高。
- 最多允许坏2块盘。允许Disk0和Disk2同时损坏、或 Disk1和Disk3同时损坏,其他组合情况损坏则会影响数据。
网络异常,图片无法展示
|
2.6 RAID-01(先做条带,再做镜像)
- N(偶数,N≥4)块盘先组合成一个RAID0,再组成一个RAID1。
- 读写性能与RAID 1+0相同;
- 由于RAID 0+1时,先做RAID 0,没有数据备份,因此数据可靠性来说比RAID 1+0要更差。 实际使用较少。
网络异常,图片无法展示
|
3、RAID各级别的比较
对比项 | RAID0 | RAID1 | RAID5 | RAID6 | RAID10 |
最少硬盘块数 | 2 | 2(必须为偶数) | 3 | 4 | 4(必须为偶数) |
可用容量 | N | N/2 | N-1 | N-2 | N/2 |
磁盘利用率 | 100% | 50% | (N-1)/N | (N-2)/N | 50% |
写入速度 | 快 | 不变 | 慢 | 慢 | 快 |
读取速度 | 快 | 快 | 快 | 快 | 快 |
安全性(可靠性) | 差 | 高 | 高 | 高 | 高 |
允许坏几块盘 | 0 | N/2 | 1 | 2 | 1~2块(坏2块时有要求) |
4、磁盘阵列卡
4.1 阵列卡介绍
- 阵列卡是用来实现RAID功能的板卡,通常是由I/O处理器、硬盘控制器、硬盘连接器和缓存等一系列组件构成的。
- 不同的RAID卡支持的RAID功能不同:
例如支持RAID0、RAID1、 RAID5、 RAID10等 - RAID卡的接口类型:
IDE接口、SCSI接口、SATA接口、SAS接口
4.2阵列卡的缓存
- 缓存(Cache)是RAID卡与外部总线交换数据的场所,RAID卡先将数据传送到缓存,再由缓存和外边数据总线交换数据。
- 缓存的大小与速度是直接关系到RAID卡的实际传输速度的重要因素,大缓存可以提高命中率
- 不同的RAID卡出厂时配备的内存容量不同,一般为几兆到数百兆容量不等。
5 RAID热备盘
作用:
相当于是在 raid里面再做一个备份,比如说本来Raid里面是只允许坏一个盘的情况下系统和数据依然正常运行,但是坏两个就不行了,但是加了热备之后就可以同时坏两个盘都没问题,就多了个保险。
原理:
热备盘相当于帮Raid阵列多做多个备份,如果Raid陈列里其中一个盘坏了,这个热备盘就会顶替Raid里的那个坏盘,同时利用异或校验算法,把坏盘上面的数据原样做出来并存储在热备盘中。这样一来就等于Raid没受到损坏,然再找个一个同样的盘把坏盘替换掉,Raid和热备盘的状态又正常了。