首页 > 代码库 > 什么是RAID?

什么是RAID?

RAID:Redundant Arrays of Inexpensive(Independent) Disks 独立磁盘冗余阵列。由1988年由加利福尼亚大学伯克利分校(University of California-Berkeley) 提出。RAID技术就是把许多块硬盘设备组合成一个容量更大、更安全的硬盘组,可以把数据切割成多个区段后分别存放在各个不同物理硬盘设备上,然后利用分散读写需求来提升硬盘组整体的性能,同时把重要数据同步保存多份到不同的物理硬盘设备上,起到非常好的数据冗余备份效果。


RAID实现的方式:
1、外接式磁盘阵列:通过扩展卡提供适配能力

2、内接式RAID:主板集成RAID控制器
                           安装OS前在BIOS里配置
3、软件RAID:通过OS实现


常用RAID级别:


1、RAID0硬盘组:又叫条带卷, strip。这项技术是把多块物理硬盘设备通过硬件或软件的方式串联在一起,成为一个大的卷组,将数据依次分别写入到各个物理硬盘中,这样最理想的状态会使得读写性能提升数倍,但若任意一块硬盘故障则会让整个系统的数据都受到破坏。通俗来说RAID0硬盘组技术至少需要两块物理硬盘设备,能够有效的提高硬盘的性能和吞吐量,但没有数据的冗余和错误修复能力

技术分享

2、RAID1硬盘组技术:又叫镜像卷, mirror。是把两块以上的存储设备进行绑定,目的是让数据被多块硬盘同时写入,类似于把数据再制作出多份备份的镜像,当有某一块硬盘损坏后一般可以立即通过热交换方式来恢复数据的正常使用,RAID1硬盘组技术虽然十分注重数据的安全性,但因为是把多块硬盘中写入相同的数据,也就是说理论上硬盘空间的真实可用率只有50%,因此会明显的提高硬盘组整体的成本,同时因为需要把数据同时写入到两块以上的硬盘设备中,这无疑也会增加一定系统计算功能的负载。特点为:有冗余能力,读性能提升、写性能略有下降最少磁盘数: 2, 2N。

技术分享




3、RAID5硬盘组技术:是把其它存储设备中的数据奇偶校验信息互相保存到硬盘设备中。RAID5硬盘组阵列有两项技术特色,第一,数据的奇偶校验信息并不是单独保存到某一块硬盘设备中的,而是分别互相存储到其它每一块硬盘设备上,这样的好处就是当其中任何一设备损坏后不至于出现致命缺陷。第二,图中parity(绿底白字)部分示例的就是保存数据的奇偶校验信息,换句话说就是RAID5硬盘组并不是备份真真正正的硬盘实际数据信息,而是当设备出现问题后通过奇偶校验信息来尝试重建损坏的数据,这样的技术特性兼顾了存储设备性能、数据安全性与存储成本问题有容错能力:允许最多1块磁盘损坏,磁盘数大于等于3块。

技术分享


















4、RAID10硬盘组技术:是对RAID1+RAID0硬盘组技术的一个“组合体”。如图所示,RAID10硬盘组需要至少4块硬盘来组建,其中先分别两两制作成RAID1硬盘组,保证数据的安全性,然后再对两个RAID1硬盘组实施RAID0技术,进一步的提高存储设备的读写速度,这样理论上只要坏的不是同一组中的所有硬盘,那么最多可以损坏50%的硬盘设备而不丢失数据,因此RAID10硬盘组技术继承了RAID0更高的读写速度和RAID1更安全的数据保障,在不考虑成本的情况下RAID10在读写速度和数据保障性方面都超过了RAID5,是较为广泛使用的存储技术。特点:有容错能力:每组镜像最多只能坏一块,最少磁盘数4块。

技术分享

有兴趣的朋友可以看我的另一篇博客“实现软RAID”来对RAID技术加深理解。

什么是RAID?