一、RAID概述
1.1RAID概念
- 磁盘阵列的全名是(Redundant Arrays of Inexpensive Disk,RAID),中文意思是独立冗余磁盘阵列
- RAID可以通过技术(软件或者硬件)将多个较小的磁盘整合成为一个较大的磁盘设备,而这个较大的磁盘功能可不止存储而已,它还具有数据保护的功能,整个RAID由于选择的级别(level)不同,而使得整合后的磁盘具有不同的功能
- 基本常用的level有以下几种RAID0, RAID1, RAID5,RAID6,RAID1+0等
1.2RAID 中主要有三个关键概念和技术
- 镜像( Mirroring )将数据复制到多个磁盘,一方面可以提高可靠性,另一方面可并发从两个或多个副本读取数据来提高读性能。显而易见,镜像的写性能要稍低, 确保数据正确地写到多个磁盘需要更多的时间消耗。
- 数据条带( Data Stripping )将数据分片保存在多个不同的磁盘,多个数据分片共同组成一个完整数据副本,这与镜像的多个副本是不同的,它通常用于性能考虑。数据条带具有更高的并发粒度,当访问数据时,可以同时对位于不同磁盘上数据进行读写操作, 从而获得非常可观的 I/O 性能提升 。
- 数据校验( Data parity )利用冗余数据进行数据错误检测和修复,冗余数据通常采用海明码、异或操作等算法来计算获得。利用校验功能,可以很大程度上提高磁盘阵列的可靠性、鲁棒性和容错能力。不过,数据校验需要从多处读取数据并进行计算和对比,会影响系统性能。
- 不同等级的 RAID 采用一个或多个以上的三种技术,来获得不同的数据可靠性、可用性和 I/O 性能。至于设计何种 RAID (甚至新的等级或类型)或采用何种模式的 RAID ,需要在深入理解系统需求的前提下进行合理选择,综合评估可靠性、性能和成本来进行折中的选择。
1.3RAID功能实现
- 提高IO能力,磁盘并行读写
- 提高耐用性,磁盘冗余算法来实现
二、RAID0
RAID 0(条带化存储):性能最佳
- RAID 0连续以位或字节为单位分割数据,并行读/写于多个磁盘上,因此具有很高的数据传输率,但它没有数据冗余;
- RAID 0只是单纯地提高性能,并没有为数据的可靠性提供保证,而且其中的一个磁盘失效将影响到所有数据;
- RAID 0不能应用于数据安全性要求高的场合。
总结:
因为读写时都可以并行处理,所以在所有的级别中,RAID0的速度是最快的。
但是RAID0既没有冗余功能,也不具备容错能力,如果一个磁盘(物理)损坏,所有数据都会丢失。
读写性能提升可用空间:N*min(S1,S2,...)
无容错能力
最少磁盘数:1+
三、RAID1
RAID 1(镜像存储):完整备份
- 通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据;
- 当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID 1 可以提高读取性能;
- RAID 1是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当个磁盘失效时, 系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据
总结:
也称为镜像, 两组以上的N个磁盘相互作镜像
读性能提升,写性能略有下降
可用空间:1*min(S1,S2,...)
磁盘利用率 50%
有冗余能力
最少磁盘数:2n
四、RAID5
RAID 5:性能与数据备份的均衡考虑
- N (N>=3) 块盘组成阵列,一份数据产生N-1个条带,同时还有1份校验数据,共N份数据在N块盘上循环均衡存储;
- N块盘同时读写,读性能很高,但由于有校验机制的问题,写性能相对不高;
- (N-1) /N磁盘利用率;
- 可靠性高,允许坏1块盘,不影响所有数据(如果坏了2块硬盘,则恢复不了);
- RAID5取代了RAID3,RAID3是将校验数据放在一个磁盘上,所以此硬盘是动态频繁变化的,故障率极高;
- RAID5将校验数据分摊到每个硬盘上,可靠性高;
总结:
读写性能提升
可用空间:(N-1)*min(S1,S2,...)
有容错能力:允许最多1块磁盘损坏
最少磁盘数:3或者3+
五、RAID1+0
总结:
读写性能提升
可用空间:N*min(S1,S2,...)/2
有容错能力:每组镜像最多只能坏一块
最少磁盘数:4或者4+
六、主流RAID技术对比
标签:10,RAID,性能,镜像,磁盘,数据,冗余,磁盘阵列 From: https://www.cnblogs.com/feizirui/p/16747684.html