什么是RAID
独立硬盘冗余阵列(RAID,Redundant Array of Independent Disks)简称磁盘阵列。利用虚拟化存储技术把多个硬盘组合起来,称为一个或多个硬盘阵列组,目的是为提升性能或数据冗余,或是两者同时提升。
RAID技术出现的初衷是把多个小容量的硬盘组合起来,以获得更大的存储容量。当前我们所说的RAID技术更多则是与数据保护相关,换言之,当物理设备失效时,RAID能够用来防止数据的丢失。
Raid功能实现
- 外接式磁盘阵列:通过扩展卡提供适配能力
- 内接式RAID:主板集成RAID控制器,安装OS前在BIOS里配置
- 软件RAID:通过OS实现,比如群辉的NAS
RAID级别
raid0、raid1、raid2、raid3、raid4、raid5、raid6、raid7、raid10、raid01、raid50
常见raid:raid0、raid1、radi5、raid10、raid01
RAID0(条带卷,strip)
以chunk单位,读写数据,因为读写时都可以并行处理,所以在所有级别中,RAID0的速度是最快的。但是RAID0既没有冗余功能,也不具备容错及能力,如果一个磁盘(物理)损坏,所有数据都会丢失。
特点
- 读写性能提升
- 可用空间:N*min(S1,S2,)
- 无容错能力
- 最少磁盘数:1+
RAID1(镜像卷,mirror)
也称为镜像,两组以上的N个磁盘相互作镜像,在一些多线程操作系统中能有很好的读取速度,理论上读取速度等于硬盘数量的倍数,与raid0相同。另外写入速度有微小的降低。
在这里,需要注意的是,读只能在一块磁盘上进行,并不会进行并行读取,性能取决于硬盘中较快的一块。写的话通常比单块磁盘要慢,虽然是并行写,即对两块磁盘的写入是同时进行的,但因为要比较两块硬盘中的数据,所以性能比单块磁盘慢。
特点
- 读性能:N*单块磁盘的读性能
- 写性能:N*单块磁盘的写性能
- 磁盘利用率50%,成本最高
- 最少磁盘数:2+
RAID5
RAID5技术是把硬盘设备的数据奇偶校验信息保存到其他硬盘设备中。RAID5磁盘阵列组中数据的奇偶校验信息并不是单独保存到某一块磁盘设备中,而是存储到除自身以外的其他每一块应的设备上,这样的好处是其中任何一个设备损坏后不至于出现致命缺陷。下图“parity”部分存放的就是数据的奇偶校验信息,换句话说,就是RAID5技术实际上没有备份磁盘中的真实数据信息,而是当硬盘设备出现问题后通过奇偶校验信息来尝试重建损坏的数据。RAID5这样的技术特性“妥协”的兼顾了硬盘设备的读写速度、数据安全性与存储成本问题。
特点
- 磁盘空间利用率:(N-1)/N,即只浪费一块磁盘用于奇偶校验。
- 读性能:(n-1)*单块磁盘的读性能,接近RAID0的读性能。
- 写性能:比单块磁盘的写性能要差
- 冗余:只能坏1块盘
- 最少磁盘数:3,3+
RAID10
定义:
RAID10也被称为镜象阵列条带。象RAID0一样,数据跨磁盘抽取;象RAID1一样,每个磁盘都有一个镜象磁盘, 所以RAID 10的另一种会说法是 RAID 0+1。RAID10提供100%的数据冗余,支持更大的卷尺寸,但价格也相对较高。对大多数只要求具有冗余度而不必考虑价格的应用来说,RAID10提供最好的性能。使用RAID10,可以获得更好的可靠性,因为即使两个物理驱动器发生故障(每个阵列中一个),数据仍然可以得到保护。RAID10需要4 + 2*N 个磁盘驱动器(N >=0), 而且只能使用其中一半(或更小, 如果磁盘大小不一)的磁盘用量, 例如 4 个 250G 的硬盘使用RAID10 阵列, 实际容量是 500G。
实现原理:
Raid10其实结构非常简单,首先创建2个独立的Raid1,然后将这两个独立的Raid1组成一个Raid0,当往这个逻辑Raid中写数据时,数据被有序的写入两个Raid1中。磁盘1和磁盘2组成一个Raid1,磁盘3和磁盘4又组成另外一个Raid1;这两个Raid1组成了一个新的Raid0。如写在硬盘1上的数据1、3、5、7,写在硬盘2中则为数据1、3、5、7,硬盘中的数据为0、2、4、6,硬盘4中的数据则为0、2、4、6,因此数据在这四个硬盘上组合成Raid10,且具有raid0和raid1两者的特性。
虽然Raid10方案造成了50%的磁盘浪费,但是它提供了200%的速度和单磁盘损坏的数据安全性,并且当同时损坏的磁盘不在同一Raid1中,就能保证数据安全性。假如磁盘中的某一块盘坏了,整个逻辑磁盘仍能正常工作的。
当我们需要恢复RAID10中损坏的磁盘时,只需要更换新的硬盘,按照RAID10的工作原理来进行数据恢复,恢复数据过程中系统仍能正常工作。原先的数据会同步恢复到更换的硬盘中。
特点
- 磁盘空间利用率:50%。
- 读性能:N/2*单块硬盘的读性能
- 写性能:N/2*单块硬盘的写性能
- 冗余:每组镜像最多只能坏一块
- 最少磁盘数:4,4+
RAID01
多块磁盘先组成raid0,再组成raid1
RAID10 和 RAID01对比:
raid10和raid01在数据安全上raid10要更可靠一些,而且在磁盘发生故障后,raid10的读取速度要高于raid01,因为raid 01底层是raid 0,一旦坏一块硬盘则与其同一组的另一块磁盘也将无法读取数据,而raid 10 底层是raid 1是镜像,一组内坏一块之后另一块依然可以使用,所有综合比较,推荐使用raid10.
标签:RAID,raid10,raid01,性能,raid5,磁盘,数据,硬盘,RAID10 From: https://www.cnblogs.com/glinux/p/16938402.html