Operating Systems: Three Easy Pieces阅读笔记(三)DISK-RAID

本文详细介绍了RAID技术的不同级别,包括RAID 0、RAID 1、RAID 1-0/0-1、RAID 4和RAID 5。通过对比单块硬盘的性能,展示了各种RAID级别的存储容量、读写速度及可靠性等方面的特点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Redundant Arrays of Independent Disks,RAID

下面以与单块硬盘的性能的倍数比表示RAID的性能
raid 0
没有镜像和按位检查的能力,block在不同的磁盘上带状分布,以尽量避免同一时间只对一个磁盘写入,连续读写和随机读写的效率都能提高N倍:

    disk0        disk1      disk2      disk3
      0            1          2          3
      4            5          6          7

N块硬盘的储存容量是原来的N倍
读写速度比单独一块硬盘提高N倍
可靠性:任何一块硬盘出现错误都会导致数据丢失,因此出错的可能性是原来的N倍,可靠性是原来的1/N。

raid 1
block在磁盘上用镜像备份,因此储存容量是单独硬盘的N/2倍。
连续读写时,实际上有一半的硬盘是镜像,因此读写速度仅是原来的N/2倍
随机读取时,读取操作随机分散到各个盘中,因此N个盘读取速度是N倍
随机写入时,因为多写入了一次镜像,因此写入速度是读取速度的一半N/2
可靠性方面,一个镜像的崩溃不影响硬盘阵列的工作。

raid 1-0 / 0-1
即同时使用带区和镜像,综合了raid 0和raid 1 的优点。

raid 4
专门独立出一块硬盘 parity disk用于按位检查各个硬盘中的数据,用对所有磁盘相应的位进行XOR,当其中一个磁盘崩溃时,可以根据parity disk中的值和各个磁盘中相应位的值推导出该位的值,因此不需要用镜像。
parity disk不用于储存,因此容量为N倍。
显然连续读写和随机读取速度都是N-1倍。
但raid 4的缺点在于,当进行随机写入时,由于要更新parity disk中的值,而所有值都集中在同一块硬盘上,所以即使对不同硬盘的写入也无法有效的同步进行,并且由于需要用parity进行检验和更新,需要对更新的硬盘和parity disk各进行一次读写(可看作并发进行),实际上随机写入的时间就相当于了对parity disk 的读写时间,写入速度是1/2倍。

raid 5
将parity的值分散到各个硬盘中,解决了raid 4 中存在的同步写入的问题,但是parity总共还是占一个硬盘的空间,因此容量、连续读写和随机读取速度都不变,仍为N-1倍,
随机写入并更新parity变得能够并发进行,但之前对parity disk的读写分摊到各个disk上,一次写入相当于对数据盘进行了4次操作(parity disk和数据盘的读写操作可以看作不再同步进行,都堆到数据盘里面来了)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值