首页 > 代码库 > 磁盘阵列raid0,raid1,raid5,raid0-1,raid1-0学习笔记

磁盘阵列raid0,raid1,raid5,raid0-1,raid1-0学习笔记

磁盘阵列RAID ,REDUNDANTARRAYS OD INDEPENSIVE DISKS ,容错廉价磁盘阵列,可以通过一些技术将多个较小的磁盘整合为一个较大的磁盘设备,而这个较大的磁盘功能不只是存储,还具有数据保护的功能。


整个RAID的等级不同,而使整合后的磁盘具有不同的功能。


常见的RAID有以下几种:

1.RAID 0:(等量模式)性能最佳

这个模式如果使用相同型号与容量的磁盘来组成,效果最佳,这种模式的RAID会将磁盘先切出等量的区块,然后当一个文件要写入RAID的时候,该文件会依据块的大小切割好之后,再依次放入到各个磁盘之中。

因为每个磁盘会交错存放数据,因此当你的数据要写入RAID 的时候,数据会被等量的放置在各个磁盘上,放置方式如下图所示

技术分享

当有数据要写入的时候,数据先会被分为符合小区块的大小,然后再依次一个个的放置到不同的磁盘中,这样数据已经被分开并且依次放置到不同的磁盘上,因此每块磁盘所负责的数据量都变小了,因此,越多块磁盘组成的RAID-0性能越好。、

但是,使用这个等级必须要自行负担数据损毁的风险,只要某一块磁盘损毁,数据文件会缺少一块,这个文件就损毁了,

2.RAID 2 :(映像模式MIRROR) 完整备份

需要相同的磁盘容量,最好是一模一样的两个片,这个模式主要是让同一份数据完整保存在两块磁盘之上,比如说有一个大小为100M的文件,在存储的时候,会将这100M数据同时存储到两个磁盘上,实现备份,即映像,整体RAID的容量减少了50%。

如下所示,数据传到两个磁盘的时候,会被分为两股,并分别希尔到各个磁盘之中,如果要写入100M的数据的时候,数据传输到I/O总线的时候,会被复制多份到各个磁盘上,结果就是数据量感觉变大了,因此在大量写入RAID 1的时候,写入的性能会变得很差。

技术分享

因为两块磁盘写入的内容一样,因此当其中一块磁盘损毁时候,数据还是可以完整的保存下来,所以说RAID 1 最大的优点就是实现数据存放的冗余。

3.RAID 0+1

为了解决RAID 0性能佳但是不安全,RAID 1 安全但是性能不佳的缺点,可以将这两种阵列相结合,即为RAID 0+1 或者RAID 1+0

实现的方法分别如下所示

技术分享


4.RAID 5

至少需要3块以上的磁盘才能够组成这种类型的磁盘阵列,这种磁盘阵列的数据写入类似RAID 0,不过每个循环的写入过程中,在每块磁盘还加入一个同位检查数据(PARITY),这个舒服会记录其他磁盘的备份数据,用于当有磁盘损毁时 的数据,读写情况如下所示

技术分享

每个循环写入时,都会有部分的同位检查码都被记录下来,并且记录的同为检查码每次都在不同的磁盘,任何一个磁盘损毁时都能通过其他磁盘的检查码来重建原理啊磁盘内的数据。

不过需要注意的是,当有同为检查码存在的时候整个磁盘阵列的容量会是整体磁盘数量减一块。

读性能还不错,但是写性能没有增加很多,因为要写入RAID5的数据还要经过计算同位检查码.

5.预备磁盘功能(spare disk)

当磁盘阵列的磁盘损毁时,就得要将损毁的磁盘拔除,然后换一块新的磁盘,换成新磁盘之后并且顺利启动磁盘阵列之后,磁盘阵列就会主动重建原本坏掉的那块磁盘数据到新的磁盘上,然后磁盘阵列上的数据就复原了,这就是磁盘阵列的优点

为了让系统可以实时地在坏掉硬盘时主动重建,就需要预备磁盘的辅助,所谓的预备磁盘是一块或者多块没有包含在原本cipa阵列等级中的硬盘,这块硬盘平时并不会被磁盘阵列所使用,当磁盘阵列有任何磁盘损毁时,这块spare disk会被主动拉进磁盘阵列中,并将坏掉的那块硬盘移除磁盘阵列.


本文出自 “牛顿也吃苹果” 博客,请务必保留此出处http://mi55u.blog.51cto.com/11619321/1941150

磁盘阵列raid0,raid1,raid5,raid0-1,raid1-0学习笔记