RAID相关知识

简介

RAID ( Redundant Array of Independent Disks )即独立磁盘冗余阵列,通常简称为磁盘阵列。RAID技术将多个单独的物理硬盘以不同的方式组合成一个逻辑磁盘,从而提高硬盘的读写性能和数据安全性。

数据组织形式

分块:将一个分区分成多个大小相等的、地址相邻的块,这些块称为分块。由它组成条带。

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

热备

当冗余的RAID组中某个硬盘失效时,在不干扰当前RAID系统的正常使用情况下,用RAID系统中另一个正常的备用硬盘自动顶替失效硬盘,及时保证RAID系统的冗余性。

分类

全局式:备用硬盘为系统中所有的冗余RAID组共享

专用式:备用硬盘为系统中某一组冗余RAID组专用

RAID级别

RAID0

简单的、无数据校验的数据条带化技术

RAID0 将所在磁盘条带化后组成大容量的存储空间,将数据分散存储在所有磁盘中,以独立访问方式实现多块磁盘的并读访问。具有低成本、高读写性能、100% 的高存储空间利用率等优点。但是不提供数据冗余保护,一旦数据损坏,将无法恢复。

RAID 1

数据镜像,无校验

将数据完全一致地分别写到工作磁盘和镜像磁盘,磁盘空间利用率为50%。RAID1 在数据写入时,响应时间会有所影响,但是读数据的时候没有影响。

RAID1 提供了最佳的数据保护,一旦工作磁盘发生故障,系统自动从镜像磁盘读取数据,不会影响用户工作。

RAID 3

数据条带化读写,校验信息存放在专用硬盘

采用一个专用的磁盘作为校验盘,其余磁盘作为数据盘,数据按位可字节的方式交叉存储到各个数据盘中。RAID3 至少需要三块磁盘,不同磁盘上同一带区的数据作 XOR 校验,校验值写入校验盘中。

如果 RAID3 中某一磁盘出现故障,不会影响数据读取,可以借助校验数据和其他完好数据来重建数据。假如所要读取的数据块正好位于失效磁盘,则系统需要读取所有同一条带的数据块,并根据校验值重建丢失的数据,系统性能将受到影响。当故障磁盘被更换后,系统按相同的方式重建故障盘中的数据至新磁盘。

RAID 5

数据条带化,校验信息分布式存放

采用磁盘上同时存储数据和校验数据,数据块和对应的校验信息存保存在不同的磁盘上,当一个数据盘损坏时,系统可以根据同一条带的其他数据块和对应的校验数据来重建损坏的数据。

RAID 6

数据条带化,分布式校验并提供两级冗余

可以保护阵列中同时出现两个磁盘失效时,阵列仍能够继续工作,不会发生数据丢失。

横向校验盘:P1 -- P4为各个数据盘中横向数据的校验信息。

P1 = A1 XOR A2 XOR A3 XOR A4。

斜向校验盘:DP1 -- DP4为各个数据盘及横向校验盘的斜向数据的校验信息。

DP1 = A1 XOR A6 XOR A11 XOR A16

DP2 = A2 XOR A7 XOR A12 XOR P4

DP3 = A3 XOR A8 XOR P3 XOR A13

DP4 = A4 XOR P2 XOR A9 XOR A14

RAID 10

先做RAID 1,后做RAID 0,将镜像和条带进行两级组合的RAID级别

RAID 50

先做RAID 5,后做RAID 0。

主流RAID等级技术对比

坏盘数量

有几块校验盘,就最多允许坏几块盘。

|--------|--------|--------|--------|--------|---------|
| RAID级别 | RAID 0 | RAID 1 | RAID 5 | RAID 6 | RAID 10 |
| 最多坏盘数量 | 0 | n/2 | 1 | 2 | n/2 |

逻辑卷

在RAID基础上可按照指定容量创建一个或多个逻辑卷,通过LUN(Logic Unit Number)来标识

相关推荐
嵌入式郑工2 小时前
LINUX驱动开发: 设备和驱动是怎么匹配的?
linux·运维·服务器
rain bye bye3 小时前
calibre LVS 跑不起来 就将setup 的LVS Option connect下的 connect all nets by name 打开。
服务器·数据库·lvs
郭式云源生法则3 小时前
归档及压缩、重定向与管道操作和综合使用,find精确查找、find处理查找结果、vim高级使用、vimdiff多文件使用
linux·运维·服务器
getExpectObject()3 小时前
【jenkins】构建安卓
运维·jenkins
小池先生4 小时前
服务请求出现偶发超时问题,经查服务本身没问题,问题出现在nginx转发。
运维·服务器·nginx
java_logo4 小时前
vllm-openai Docker 部署手册
运维·人工智能·docker·ai·容器
MANONGMN4 小时前
Linux 通配符与正则表达式(含实战案例+避坑指南)
linux·运维·正则表达式
asdfg12589634 小时前
如何判断一个地址是否可以用作主机 IP 地址?
服务器·网络·tcp/ip
勤源科技4 小时前
运维知识图谱的构建与应用
运维·人工智能·知识图谱
jiyuzzz5 小时前
Docker部署WordPress及相关配置
运维·docker·容器