存储技术:RAID技术

存储技术:RAID技术

一、什么是RAID技术

RAID(Redundant Array of Independent Disks,独立磁盘冗余阵列)是一种通过组合多个物理硬盘形成逻辑存储单元的技术,旨在提升存储系统的性能、可靠性和容量。

性能提升:通过并行读写提高I/O速度(如RAID 0的条带化) 。

数据冗余:通过镜像或校验数据保证数据安全(如RAID 1的镜像、RAID 5的奇偶校验) 。

容量扩展:整合多块硬盘的存储空间

组成方式:

硬件RAID:RAID卡

软件RAID:操作系统提供的RAID功能通过软件实现(如Linux的mdadm工具)

RAID的数据组织形式:

条带(strip):硬盘中单个或者多个连续的扇区构成一个条带,他是一块硬盘上一次数据读写的最小单元。它是组成分条的元素。

分条(stipe):同一硬盘阵列中的多个硬盘驱动器上的相同“位置”(或者说是相同编号)的条带。

RAID的数据保护方式:

方法一:在另一块冗余的硬盘上保存数据的副本。
方法二:奇偶校验算法(XOR)。
XOR运算广泛地使用在数字电子和计算机科学中。
XOR校验的算法—-相同为假,相异为真:
0⊕0=0;0⊕1=1;1⊕0=1;1⊕1=0;

二、RAID的级别

1.RAID 0

是一种通过条带化(Striping)技术将数据分块并分散存储于多个物理硬盘的存储方案,核心目标是提升存储性能,但不提供数据冗余保护。数据写入时将数据分割为固定大小的块(如64KB或更大),依次写入多个硬盘。例如,由2块硬盘组成的RAID 0中,数据块A1、A2、A3、A4分别写入硬盘1、硬盘2,实现并行读写。空间利用率为100%,硬盘数量>=2。

优点:提升性能

缺点:无冗余

2.RAID 1

是一种通过数据完全复制实现冗余的存储技术,提供数据安全性。数据写入时将数据同时写入多个硬盘(通常为2块),形成完全相同的副本(镜像)。例如,写入硬盘A的数据会实时复制到硬盘B,确保每个硬盘存储的内容一致。空间利用率为50%,硬盘数量>=2。

优点:提供冗余

缺点:无性能提升,磁盘利用率低

3.RAID 3

(带专用奇偶校验的字节级条带化)是一种结合数据条带化与奇偶校验(单独用一个磁盘用于奇偶检验)的存储技术,旨在平衡性能与数据安全性。数据写入时数据被分割为字节级块(通常为1字节或512字节),并分散存储于多个数据盘中。例如,由3块硬盘组成的RAID 3中,数据块D1、D2写入数据盘,奇偶校验信息P1存储于专用校验盘。空间利用率为(n-1)/n(n为磁盘数),硬盘数量>=3。

优点:有性能提升,提供冗余,允许坏一个磁盘

缺点:所有写入操作均需更新校验盘,导致随机写性能低下,专用检验盘成为瓶颈

4.RAID 5

(独立磁盘冗余阵列级别5)是一种结合数据条带化与分布式奇偶校验(每个磁盘都写入校验)的存储技术,旨在平衡性能、存储效率与数据冗余。数据写入时数据被分割为固定大小的块(称为“条带”),并分散存储在所有磁盘上,实现并行读写以提高性能。例如,3块硬盘组成的RAID 5中,数据块D1、D2分别存储于2块硬盘,奇偶校验块P1存储于第3块硬盘,下一组数据轮换校验块的位置以实现分布式存储。空间利用率为(n-1)/n(n为磁盘数),硬盘数量>=3。

优点:有性能提升,提供冗余,允许坏一个磁盘;适用用顺序IO业务,如:监控视频,备份

缺点:每次写入需计算并更新校验信息,导致“写惩罚”(写入数据需读旧数据、旧校验、写新数据、新校验)

5.RAID 6

(独立磁盘冗余阵列级别6)是一种通过双重奇偶校验实现高容错能力的存储技术,允许同时两块硬盘故障而不丢失数据。RAID 6在RAID 5的单奇偶校验(P校验)基础上增加第二份独立校验(Q校验),通常采用异或运算(XOR)和伽罗华域(Galois Field)算法生成。校验块P和Q分散存储在所有磁盘中,避免单点瓶颈,形成“分布式冗余”。最多允许任意两块磁盘同时故障,数据可通过剩余磁盘和校验信息重建。空间利用率为(n-2)/n(n为磁盘数),硬盘数量>=4。

优点:有性能提升;双重冗余机制,允许坏两个磁盘

缺点:每次写入需更新两份校验;双盘故障恢复需复杂计算,期间性能下降

6.RAID 10

(镜像+条带化混合阵列)是一种通过嵌套RAID 1(镜像)与RAID 0(条带化)实现高性能与高冗余的存储方案,结合了镜像的安全性与条带化的效率。RAID 10由至少4块硬盘组成,先将硬盘两两组成镜像对(RAID 1),再将多个镜像对条带化(RAID 0)存储数据。例如,4块硬盘分为两组(Disk1-Disk2、Disk3-Disk4),数据条带化写入两组镜像对中。数据写入时数据被分割为条带,每个条带同时写入镜像对中的主盘和镜像盘。空间利用率为50%,硬盘数量4+2n。

优点:高性能;高冗余性(允许坏两个磁盘但不在一个镜像组内);适用于随机IO业务,如:数据库

缺点:磁盘利用率低,增加硬盘需成对扩容

7.RAID 50

(RAID 5+0)是一种结合了RAID 5的冗余校验机制与RAID 0的条带化性能优势的混合型存储方案,适用于对性能、容量和可靠性要求较高的场景。空间利用率为(n-2)/n(n为磁盘数),硬盘数量6+2n。

8.RAID 60

(RAID 6+0)是一种结合双重奇偶校验与条带化的混合型存储方案,旨在实现高容错能力与高性能的平衡。空间利用率为(n-4)/n(n为磁盘数),硬盘数量8+2n。

RAID级别 RAID0 RAID1 RAID3 RAID5 RAID6 RAID10 RAID50
容错性
冗余类型 复制 奇偶校验 奇偶校验 奇偶校验 复制 奇偶校验
热备盘选项
读性能 一般
随机写性能 最低 一般
连续写性能 一般
最小硬盘数 2块 2块 3块 3块 4块 4块 6块
可用容量 N*单块硬盘的容量 (1/N)*单块硬盘的容量 (N-1)*单块硬盘的容量 (N-1)*单块硬盘的容量 (N-2)*单块硬盘的容量 (N/2)*单块硬盘的容量 (N-2)*单块硬盘的容量

https://mp.weixin.qq.com/s/vTt7nlD1Io1Myi8bAU8ntQ?scene=1