RAID磁盘阵列

RAID磁盘阵列

在单机时代,采用单块磁盘进行数据存储和读写的方式,由于寻址和读写的时间消耗,导致I/O性能非常低,且存储容量还会受到限制。另外,单块磁盘极其容易出现物理故障,经常导致数据的丢失。因此大家就在想,有没有一种办法将多块独立的磁盘结合在一起组成一个技术方案,来提高数据的可靠性和I/O性能呢。

在这种情况下,RAID技术就应运而生了。

一、RAID 是什么?

RAID ( Redundant Array of Independent Disks )即独立磁盘冗余阵列,简称为「磁盘阵列」,其实就是用多个独立的磁盘组成在一起形成一个大的磁盘系统,从而实现比单块磁盘更好的存储性能和更高的可靠性。

RAID技术的两大特点:一是速度、二是安全

二、RAID 有哪些?

最为常用的是下面的几种RAID形式: RAID 0、RAID 1、RAID 5、RAID 10

1)RAID 0 (称为带区卷,性能最佳)

RAID 0技术把多块物理硬盘设备(至少两块)通过硬件或软件的方式串联在一起,组成一个大的卷组,并将数据一次写入到各个物理硬盘中。这样硬盘设备的读写性能会提升数倍,但是若任意一块硬盘发生故障将导致整个系统的数据都受到破坏。

img

优点:使用 n 颗硬盘,即可拥有将近 n 倍的读写效能,读写性能是所有RAID级别中最高的。

缺点:不提供数据冗余,因此一旦用户数据损坏,损坏的数据将无法得到恢复,RAID0运行时只要其中任一块硬盘出现问题就会导致整个数据的故障。

硬盘数量:最少 2 个。

2)RAID 1 (称为镜像卷,完整备份)

RAID1是将一个两块硬盘所构成RAID磁盘阵列,其容量仅等于一块硬盘的容量,因为另一块只是当作数据“镜像”

请添加图片描述

优点:安全性依照数组里的实体硬盘数量倍数成长。

缺点:空间利用率是所有 RAID 中最没有效率的。

硬盘数量:最少 2 个,磁盘空间使用率:50%,故成本最高

3)RAID 5 (性能与数据备份的均衡考虑)

RAID 5技术把多块硬盘设备(至少三块)的数据奇偶校验信息保存到其他硬盘设备中。RAID 5磁盘阵列组中数据的奇偶校验信息并不是单独保存到某一块硬盘设备中,而是存储到除自身以外的其他每一块硬盘设备上,这样的好处是其中任何一设备损坏后不至于出现致命缺陷;

RAID5不对存储的数据进行备份,而是把数据和相对应的奇偶校验信息存储到组成RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上。当RAID5的一个磁盘数据发生损坏后,利用剩下的数据和相应的奇偶校验信息去恢复被损坏的数据。

img

优点:兼顾空间利用率与安全性。

缺点:需要额外的运算资源,仅能忍受 1 个硬盘损毁。

硬盘数量:至少 3 个。

4)RAID 10

RAID 10技术是RAID1+RAID0技术的一个组合体。如下图,RAID 10技术需要至少四块硬盘来组建,其中先分别两两制作成RAID 1磁盘阵列,以保证数据的安全性;然后再对两个RAID 1磁盘阵列实施RAID 0技术,进一步提高硬盘设备的读写速度。这样子从理论上讲,只要坏的不是同一组中的所有硬盘,那么最多可以损坏50%的硬盘设备而不丢失数据。RAID 10技术继承了RAID 0的高读写速度和RAID 1的数据安全性。

img

ps:RAID6

为了进一步提高存储的高可用,聪明的人们又提出了RAID6方案,可以在有两块磁盘同时损坏的情况下,也能保障数据可恢复。

为什么RAID6这么牛呢,因为RAID6在RAID5的基础上再次改进,引入了双重校验的概念。

RAID6除了每块磁盘上都有同级数据XOR校验区以外,还有针对每个数据块的XOR校验区,这样的话,相当于每个数据块有两个校验保护措施,因此数据的冗余性更高了。

但是RAID6的这种设计也带来了很高的复杂度,虽然数据冗余性好,读取的效率也比较高,但是写数据的性能就很差。因此RAID6在实际环境中应用的比较少。

img

  • 下表为几种RAID级别的各自特点:(n为假定有n块磁盘组成)
项目RAID-0RAID-1RAID-10RAID-5RAID-6
最少磁盘数22434
最大容错磁盘数n-1n/212
数据安全性完全没有最佳最佳比RAID-5好
理论写入效率n1n/2
理论读出效率nnnn
磁盘实际可使用量n1n/2n-1n-2
一般应用强调效率但数据重要性要求不高的环境数据存储与备份服务器与云系统中常用数据存储与备份数据存储与备份

三、 软件RAID与硬件RAID

  • 前面也都提到过RAID分为软件RAID和硬件RAID,以下将会介绍什么是软件RAID,什么又是硬件RAID,以及二者又有什么区别是什么。
  • 硬件磁盘阵列(hardwareRAID)是通过磁盘阵列卡来创建磁盘阵列的。在磁盘阵列卡上会有一个专门的芯片来处理RAID任务,可以大大减轻原来系统的计算压力和I/O压力,效率也会得到很好的提升;同时现在相当一部分的磁盘阵列卡都支持热拔插,所以在更换损坏磁盘时是非常方便的。但是不好的一点是磁盘阵列卡比较贵,特别是那些好一点的磁盘阵列卡就会特别贵,而且功能还不能保证特别齐全,所以在这种情况下就出现了软件RAID,来模拟硬件RAID。
  • 软降RAID是一种模拟硬件RAID的产物,是要运行在系统上面的,是要占用一定的系统资源的,特别是计算和I/O资源,所以在效率上跟硬件RAID相比还是有有相当的差距的。虽然说现在的机器计算速度都非常快了,但是对于一些要求较高的场景或企业,一般最好还是尽量不要选择软件RAID的,毕竟在总的使用成本上来说硬件RAID还是很划算的!
  • 16
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值