RAID 磁盘阵列讲解

一、RAID 是什么?

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

二、RAID 有哪些?

RAID方案常见的可以分为:

  • RAID 0

  • RAID 1

  • RAID 5

  • RAID 6

  • RAID 10

RAID 阵列实现方式:

  • 硬RAID:由RAID控制卡管理阵列

        主板 → 阵列卡 → 磁盘 → 操作系统 → 数据

  • 软RAID:由操作系统来管理阵列

         主板 → 磁盘 → 操作系统 → RAID软件 → 数据

三、RAID 0:一块硬盘或以上

       RAID 0 是一种非常简单的的方式,它将多块磁盘组合在一起形成一个大容量的存储。当我们要写数据的时候,会将数据分为N份,以独立的方式实现N块磁盘的读写,那么这N份数据会同时并发的写到磁盘中,因此执行性能非常的高。

        RAID0 的读写性能理论上是单块磁盘的N倍(仅限理论,因为实际中磁盘的寻址时间也是性能占用的大头)

        但RAID 0的问题是,它并不提供数据校验冗余备份,因此一旦某块磁盘损坏了,数据就直接丢失,无法恢复了。因此RAID0就不可能用于高要求的业务中,但可以用在对可靠性要求不高,对读写性能要求高的场景中。

RAID 0:写入数据的时候,会将数据分N份,执行性能高,但不提供数据校验或冗余备份,一旦某块磁盘损坏,数据直接丢失,无法恢复

四、RAID 1:至少两块盘(常用)

        RAID1 是磁盘阵列中单位成本最高的一种方式。因为它的原理是在往磁盘写数据的时候,将同一份数据无差别的写两份到磁盘,分别写到工作磁盘镜像磁盘,那么它的实际空间使用率只有50%了,两块磁盘当做一块用,这是一种比较昂贵的方案。

        RAID1其实与RAID0效果刚好相反。RAID1 这种写双份的做法,就给数据做了一个冗余备份。这样的话,任何一块磁盘损坏了,都可以再基于另外一块磁盘去恢复数据,数据的可靠性非常强,但性能就没那么好了

RAID 1:双写数据,做一个冗余备份,任何一块磁盘损坏,都可以基于另外一块磁盘恢复数据

五、RAID 5:至少需要3块硬盘

这是目前用的最多的一种方式

RAID 5 是一种将 存储性能、数据安全、存储成本 兼顾的一种方案。

        RAID 5 的方式是:将数据按照RAID 0的形式,分成多份同时写入多块磁盘,但是还会另外再留出一块磁盘用于写「奇偶校验码」。例如:总共有N块磁盘,让其中额度N-1块用来并发的写数据,第N块磁盘用记录校验码数据。一旦某一块磁盘坏掉了,就可以利用其它的N-1块磁盘去恢复数据。

        但是由于第N块磁盘是校验码磁盘,因此有任何数据的写入都会要去更新这块磁盘,导致这块磁盘的读写是最频繁的,也就非常的容易损坏。RAID5的方式可以说是对RAID3进行了改进。

        RAID 5 模式中,不再需要用单独的磁盘写校验码了。它把校验码信息分布到各个磁盘上。例如,总共有N块磁盘,那么会将要写入的数据分成N份,并发的写入到N块磁盘中,同时还将数据的校验码信息也写入到这N块磁盘中(数据与对应的校验码信息必须得分开存储在不同的磁盘上)。一旦某一块磁盘损坏了,就可以用剩下的数据和对应的奇偶校验码信息去恢复损坏的数据。

RAID 5:最少三块磁盘组成阵列,允许最多同时坏一块磁盘,如果有两块磁盘同时损坏,数据无法恢复;

六、RAID 6:至少需要4块硬盘

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

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

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

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

七、RAID 10:至少需要4快硬盘。raid10是2快硬盘组成raid1,2组raid1组成raid0

RAID 10 其实就是 RAID 1 与 RAID 0 的一个合体。

RAID 10 兼备了RAID1和RAID0的有优点。首先基于 RAID 1 模式将磁盘分为2份,当要写入数据的时候,将所有的数据在两份磁盘上同时写入,相当于写了双份数据,起到了数据保障的作用。且在每一份磁盘上又会基于 RAID 0 技术讲数据分为N份并发的读写,这样也保障了数据的效率。

但也可以看出 RAID 10 模式是有一半的磁盘空间用于存储冗余数据的,浪费的很严重,因此用的也不是很多。

对比项RAID 0RAID 1RAID 5

RAID 6

RAID 10
磁盘数>=2>=2>=3>=4>=4
存储利用率100%<=50%n-1/nn-2/n<=50%
校验盘12
容错率
IO性能较高

    较高

  • 24
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

重见之日

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值