RAID 磁盘阵列详解,RAID分类及优缺点

Raid 基础知识

1. 什么RAID磁盘阵列

  • RAID 是美国加州伯克利 D.A.Patterson 教授 在1988年提出的
  • 中文全称 独立磁盘冗余阵列,简称 磁盘阵列

把多块独立的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能,并通过储存冗余数据也增加容错能力。

2.RAID 磁盘阵列分类

在这里插入图片描述
按照物理类型可以分为2大类:硬RAID 、软RAID
通过硬件实现RAID功能的,俗称硬RAID。通常有2种解决方案,一是外接式 磁盘阵列柜(价格贵,企业级才需要)。二是通过在电脑上假装 阵列卡,通过磁盘阵列卡实现RAID。阵列卡更快(提示读写速度)更稳定(好一点的阵列卡会带电池,防止突然断电)

在这里插入图片描述
用软件模拟RAID,就是软RAID

3.RAID的逻辑分类

3.1 RAID 0模式(速度很快)

  • 将2个以上的磁盘并联起来,形成一个大的磁盘。

  • 可用容量= 所有硬盘之和

  • 当进行写入的时候,是把 数据分段后,分别存在不同的硬盘中

  • 容量最大,读写速度最快

  • 极致的速度带来的就是不安全

  • 一定不要用RAID 0 存放重要数据
    在这里插入图片描述

缺点:没有冗余和容错能力,磁盘阵列只要坏一块盘,所有数据跟着玩完

3.2 RAID 1(护卫镜像)

RAID1模式最少需要2块磁盘,所有硬盘互为镜像,每块硬盘上存储的数据都一样。阵列磁盘中,只要有一块硬盘没坏,数据都可以完整读取出来
在这里插入图片描述
RAID 1理论去读速度和RAID0 相同,有几块硬盘,读取速度就是几倍,但是写入速度等于单块硬盘,没有任何提升。当RAID1 某一块硬盘损坏时,拔出损坏的盘,插入新的盘,阵列会恢复数据到新插入硬盘(重建阵列)

注释:如果各个硬盘大小不一,最终容量会以最小的为准,整体利用率是所有RAID分类中最低的

3.3 RAID 2

如果想要安全的提升,又不追求极致的速度,那就了解下RAID2、3、4、5、6吧

RAID 2、3、4在设计之初,主要针对特定的应用场景,因为各种各样的缺陷,很少会用到,很多阵列卡也都不支持RAID 2、3、4

RAID 2 模式至少需要3块盘,读写是需要对 数据进行实时编码,分段写入不同的硬盘,得到的数据总量会比原始数据大。
在这里插入图片描述

RAID2 模式在读写是需要实时校验数据,校验算法较为复杂,硬件开销偏大。所以提出了RAID3
在这里插入图片描述

3.4 RAID3

  • RAID3 是在RAID 2基础是提出来的,因为采用跟简单算法,对硬件开销相对较小

  • RAID 3最少3块硬盘,读写操作时,数据分段写入不同的硬盘,校验数据单独存放在,另一个硬盘里。

  • 由于每次读写操作都会访问校验盘,导致校验盘长时间高负荷工作,非常容易挂掉。如果校验盘坏了,那数据就没救了。

在这里插入图片描述

3.5 RAID4

  • RAID 4和RAID3 相似,是把校验数据单独存放在一个硬盘里

  • 与RAID3 不同的是,RAID4 数据分段的方式不一样。

RAID 3按照bit 比特分割数据,RAID4 按照数据块分割,数据块大小按照系统决定,通常比 bit 大很多,所以小文件写入会比RAID3 快。

RAID4 的缺点是非校验盘数据损坏,数据恢复概率比RAID 3低一些

如果是校验盘损坏,RAID3 和RAID4 都无法恢复数据

在这里插入图片描述

3.6 RAID 5(重要,允许挂一块)

  • RAID 5 原理和RAID3 相似,区别是RAID3 把校验数据存放在一个硬盘里,但RAID 5的校验数据是分散 在各个磁盘里。每个硬盘都有校验数据

  • 当一块硬盘损坏,所有其它盘里的数据,配合校验信息,就可以进行信息恢复,避免了RAID3 校验盘坏了,无法恢复数据的缺陷

在这里插入图片描述

在这里插入图片描述

RAID 5模式至少需要3块硬盘,其中1/3的空间作为冗余。2/3空间存放原始数据。

  • RAID 读取数据和RAID0 相近,写入速度不急RAID0。但因为1/3的空间作为校验数据,允许阵列损坏一块硬盘的情况下,实现数据完全恢复,安全性比RAID0 高出很多

注意:RAID 5还有一个子模式 RAID F1,主要针对固态硬盘。采用类似RAID5的阵列模式,对SSD写入有特定的优化,校验数据会尽量放在一个SSD里,降低其他固态硬盘的写入量,当发现SSD写入快到上限时,支持自动数据转移。(由于价格贵,一般接触不到)

在这里插入图片描述

3.6 RAID 6(重要)

  • 与RAID5 相比,增加到了2个硬盘空间,存放校验数据,导致RAID6

  • 至少需要4块硬盘才行。

在这里插入图片描述

RAID 6模式数据安全性非常高,2个冗余磁盘空间,使用不同校验算法,任意坏2块硬盘,都能实现数据完全恢复,安全性相对RAID5更高一级

但因为采用双算法校验数据,校验数据量是RAID5的2倍,同时校验算法计算量也偏大,导致RAID6读写速度不及RAID5.

RAID6 写入慢,还多站了一个磁盘容量

在这里插入图片描述

注意:机械硬盘先天性缺陷URE,大概是每12TB的数据,可能会出现一个URE。当RAID5正在进行磁盘构建的时候,出现一次URE错误,就会导致RAID5认为数据出现问题,需要从新构建阵列。多次重建阵列导致硬盘长时间高负荷运作,如果硬盘是同一时期买的,一块硬盘挂了,其它硬盘的状态也好不到哪里去,非常容易导致更多硬盘损坏(RAID5只允许坏掉一块硬盘,重建过程中在挂掉一块硬盘,数据就恢复不回来了。)

在这里插入图片描述
个人建议RAID 5尽量少用。重建阵列成功率偏低,安全性相对RAID 6差很多

3.7 RAID 7(美国SCC的专利)

在这里插入图片描述

3.8 RAID 10(混合RAID)

把RAID1 和RAID0 两种模式合二为一,既保证数据安全,大幅度提升读写速度。缺点是可用容量 只有总容量的一半

在这里插入图片描述
RAID 10 至少需要四块硬盘,其中 先 两两组成RAID1 ,然后把两组 RAID 1 组成RAID0/

  • 所以RAID 10,是先RAID1 在RAID 0

3.9 JBOD 和 UNRAID

Just a Bunch Of Disks
只是一堆磁盘

在这里插入图片描述

JBOD模式下,数据从第一块磁盘开始,一直往后边的硬盘存。系统只能看到包含所有硬盘容量的大分区,那个硬盘坏了,坏盘里的数据就会损坏。由于第一块硬盘包含了个盘上的数据分段表。第一块盘不能坏,如果坏的是第一块硬盘 的。如果坏的是第一块硬盘,整个阵列都会报废

JBOD 优点是:系统会把多块硬盘认成一个,可用容量为所有硬盘容量之和,而且每次写入只会占用一块磁盘,读写是其它硬盘处于闲置状态,不会导致过劳而死

JBOD的缺点是:安全性偏低,读写速度和单块硬盘速度一样,没有任何的提升

UNRAID(安RAID),不组RAID

UNRAID 本身是基于LINUX 的RAID 系统,和JBOD非常相似。

事实上就是带冗余的JBOD

在这里插入图片描述

RAID 总结

RAID 技术对磁盘存储来说,是比较重要的,选择一个好的RAID方案,是可以达到意向不到的效果。常用的RAID 0 适用于对速度要求较高,且安全性低的业务场景。而对安全性要求较高的话,可以考虑RAID 1,如果考虑成本问题,要求硬盘大容量、安全性及速度的话,可以考虑RAID 5,RAID 10
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_42313749/article/details/125722770