RAID0-6
条带、镜像、并行存取(海明码、位交错奇偶校验)、独立存取(块交错奇偶检验、块级分布式奇偶检验、双冗余度)
并行存取的大数据传输率高,独立存取的 IO 请求快。
# Lecture11-RAID
区分高数据传输率和高速 IO 请求
# RAID 冗余磁盘阵列简介 ——Redundant Arrays of Independent Disks
Redundant 冗余 —— 进行错误恢复以提高系统可靠性
# RAID 分类
数据可用性:坏了几个盘还能继续用
IO 数据传输:跟写惩罚有关,并行存取因为能同时读到 1、2、3、4,所以传输能力和请求速率都较高
0-6 都是条带式的
# RAID0 - 不是 RAID 成员
如果单个 IO 请求有多个逻辑相邻的条带组成,则多达对 n 个条带的请求可以并行处理,这样大大地减少了 IO 传输时间。
# RAID1 - 镜像
大批读请求,速度较快;写请求,与 RAID0 类似。
# RAID01 VS RAID10
# 如果 Disk 0 和 Disk 3 坏了会怎么样?
对于 RAID01 来说
Disk1 损坏,左边的 RAID 0 报废;Disk3 损坏,右边的 RAID 0 报废,整体的 RAID 1 报废
对于 RAID10 来说
Disk1 损坏,左边的 RAID 1 仍能够使用;Disk3 损坏,右边的 RAID 1 仍能够使用,整体的 RAID1 仍能够使用
对于同样的出错,RAID10 仍能够正常运行,但是 RAID1 无法使用,所以 RAID10 容错率更高
# RAID2 - 并行存取
并行存取 —— 所有磁盘成员都参与每个 IO 请求的执行,各个驱动器的轴是同步旋转的。
RAID2 和 RAID3 的条带非常小,经常小到一个字节或一个字。
读写时,都需要进行校验,读操作要访问所有磁盘,写操作要访问所有数据盘和校验盘。
需要时间开销处理海明码
# RAID3 - 并行存取
并行存取
四个盘同时读写
数据传输率 —— 任何 IO 请求将包含所有数据盘的并行数据传送,对于大量传送,性能改善特别明显。
面对多个事务 —— 但是一次只能执行一个 IO 请求,在面向事务的环境中,性能将受损。
# RAID4 - 独立存取
独立存取阵列更适合与需要高速 IO 请求的应用,而相对较少用于需要高数据传输率的场合。
独立存取,每个磁盘的操作都是独立的。
写损失 —— 既要修改数据盘,也要修改校验盘。
一次写入 包括两读两写 —— 两次读操作(数据盘、校验盘)、两次写操作(数据盘、校验盘)
# RAID5 - 独立存取
避免潜在的 IO 瓶颈问题 —— 校验条带分开了可以同时读取 (
读没有影响,写受到限制(还是两读两写
# RAID50
# RAID6 - 独立存取 - 两种不同的奇偶校验码
# RAID 比较
基本需求 —— 快、可用性
0 和 1 没有达到兼顾
一些 callback
3 和 4 的区别在于,是不是一起转的
5 和 6 各有优劣