RAID磁盘阵列学习笔记

博文中不扯高大上专业词汇,只写本人白话理解......

首先,提一下RAID定义,至少得知道它的全名叫啥,哈哈~

独立硬盘冗余阵列RAID, Redundant Array of Independent Disks),旧称廉价磁盘冗余阵列(Redundant Array of Inexpensive Disks),简称磁盘阵列

RAID技术作为一种数据保护手段,被广泛应用于企业数据安全领域。

标准RAID等级主要有7个:RAID0、RAID1、RAID2、RAID3、RAID4、RAID5、RAID6(虽然看着名字很像,但是每种等级机理可是相去甚远...)

此外还有一些组合实现方式:RAID01(即RAID0+RAID1混合部署)、RAID100(道理跟前面一样)等等若干种。

一、RAID0

简单理解,RAID0实质上不提供任何形式的数据冗余,只是将数据条带化后分开存储至不同的磁盘,不同磁盘存储的数据可以同时并发I/O读写。说白了,就是把数据分片后存在多个磁盘中,读的时候从这多个磁盘中同时可以读出存储的数据,速率大大提升。因此RAID0提升了读写效率,对带宽利用率高,其最终速率会受带宽影响。理论上讲:如果有n块磁盘,RAID0后的数据读写效率可以提升n倍。

二、RAID1

RAID1其实就是镜像,每当有一份数据产生时,就会同时在镜像磁盘生成一个完全一样的备份数据,当磁盘损坏时,系统就可以利用镜像盘里的数据进行恢复,所以实质上RAID1的空间利用率为50%。也就是说两块300GB的硬盘做完RAID1后,其存储空间就剩不到300GB了。

三、RAID2

RAID2 称为纠错汉明码磁盘阵列,汉明码校验是指在原始数据中特定的位置插入校验位,进行数据校验和纠错,汉明码校验位为2n,即数据的第1,2,4,8...位为校验位,其余位为数据位。在RAID2中数据是按位存储的,每块磁盘存储一位数据,数据宽度用户可自行设定。

海明码自身具备纠错能力,因此 RAID2 可以在数据发生错误的情况下对纠正错误,保证数据的安全性。它的数据传输性能相当高,设计复杂性要低于后面介绍的 RAID3 、 RAID4 和 RAID5 。

但是,海明码的数据冗余开销太大,而且 RAID2 的数据输出性能受阵列中最慢磁盘驱动器的限制。再者,海明码是按位运算, RAID2 数据重建非常耗时。由于这些显著的缺陷,再加上大部分磁盘驱动器本身都具备了纠错功能,因此 RAID2 在实际中很少应用,没有形成商业产品,目前主流存储磁盘阵列均不提供 RAID2 支持。

四、RAID3

RAID3是使用专用校验盘的并行访问阵列,即有1块磁盘作为校验盘,其余磁盘为数据盘。存储时是将数据按位交叉存储至数据盘中,同时生成计算校验位数据存在校验盘,可实现数据并读,容错性和读效率高。当某块磁盘数据损坏时,可借助校验盘数据和其他盘数据进行恢复。

五、RAID4

RAID4和RAID3比较相同,只不过RAID4是数据以块为单位进行存储,保证了数据块的完整性。(这个不常用)

六、RAID5

RAID5是目前应用最为广泛的RAID等级,是将数据和校验数据条带化后分散存储在每块磁盘上,就是说,每块磁盘上都存储有数据和校验数据,当某块磁盘发生错误时,可根据其他盘的数据和校验数据进行恢复。

七、RAID6

RAID6算是RAID5的一种扩展,引入了双重校验,可支持当两块磁盘发生损坏时数据恢复。RAID6不仅支持数据恢复,还支持校验数据恢复,但是代价较大。

以上仅作学习记录,会不断完善......

猜你喜欢

转载自blog.csdn.net/hcqxd/article/details/114829456