磁盘阵列基础知识
- 格式:doc
- 大小:214.00 KB
- 文档页数:8
磁盘阵列原理磁盘阵列(RAID)是一种通过将多个磁盘驱动器合并成一个逻辑单元来提供数据冗余和性能提升的技术。
磁盘阵列利用磁盘级别的冗余来提供数据的备份和恢复能力,并通过将数据分布在多个磁盘上来提高数据访问速度。
在本文中,我们将探讨磁盘阵列的原理以及它是如何工作的。
1. 磁盘阵列的概念和分类磁盘阵列是一种将多个独立的磁盘驱动器组合在一起,形成一个逻辑单元的技术。
根据不同的需求,磁盘阵列可以被划分为多个级别,常见的包括RAID 0、RAID 1、RAID 5、RAID 6等级别。
每个级别都有其特定的数据保护和性能特性。
2. RAID 0RAID 0将数据分块并分布到多个磁盘上,以提高数据的读写性能。
它通过在多个磁盘上同时读取和写入数据来实现并行访问。
然而,RAID 0没有冗余机制,一旦其中一个磁盘损坏,所有数据将会丢失。
3. RAID 1RAID 1通过将数据复制到多个磁盘上来提供冗余能力。
每个数据块都会被复制到两个或更多的磁盘上,以确保数据的完整性。
当其中一个磁盘发生故障时,系统可以从其他磁盘中恢复数据。
4. RAID 5RAID 5采用分布式奇偶校验的方式来提供冗余能力。
它将数据分块并分布到多个磁盘上,同时计算奇偶校验信息并存储在不同的磁盘上。
当其中一个磁盘损坏时,系统可以通过计算奇偶校验信息来恢复数据。
5. RAID 6RAID 6在RAID 5的基础上增加了第二个奇偶校验信息。
这意味着RAID 6可以容忍两个磁盘的故障,提供更高的数据可靠性。
6. 磁盘阵列的工作原理磁盘阵列通过控制器来管理和操作多个磁盘驱动器。
控制器负责将数据分块并分布到多个磁盘上,同时监测磁盘的状态。
当磁盘发生故障时,控制器可以根据不同的级别(如RAID 1、RAID 5等)来执行数据的恢复操作。
7. 磁盘阵列的优势和应用磁盘阵列提供了数据的冗余和性能提升能力,可以提高数据的可靠性和访问速度。
它广泛应用于服务器、存储系统、数据库等需要高可靠性和高性能的场景。
raid(独立冗余磁盘阵列)基础知识RAID(独立冗余磁盘阵列)基础知识RAID(独立冗余磁盘阵列)是一种通过将多个磁盘驱动器组合在一起来提高数据存储性能和冗余性的技术。
RAID技术通过将数据分散存储在多个磁盘上,实现了数据的并行读写和冗余备份,从而提高了数据的可靠性和性能。
RAID技术的核心思想是将多个磁盘驱动器组合在一起,形成一个逻辑卷(Logical Volume),这个逻辑卷被操作系统看作是一个单独的磁盘。
RAID可以通过不同的方式组织磁盘驱动器,从而实现不同的性能和冗余级别。
常见的RAID级别包括RAID 0、RAID 1、RAID 5和RAID 10。
RAID 0是一种数据分布方式,它将数据均匀地分布在多个磁盘上,从而提高了数据的读写性能。
RAID 0的性能优势主要体现在读取速度方面,因为数据可以同时从多个磁盘上读取。
然而,RAID 0没有冗余备份机制,一旦其中一个磁盘发生故障,所有数据都将丢失。
RAID 1是一种数据冗余方式,它通过将数据在多个磁盘上进行镜像备份来提高数据的可靠性。
RAID 1的优势在于当一个磁盘发生故障时,系统可以从其他磁盘上读取数据,保证数据的完整性。
然而,RAID 1的缺点是存储效率较低,因为每个磁盘都需要存储完整的数据。
RAID 5是一种将数据和校验信息分布在多个磁盘上的方式,通过计算校验信息来实现数据的冗余备份。
RAID 5的优势在于能够提供较高的数据存储效率和较好的读取性能,同时具备一定的容错能力。
当一个磁盘发生故障时,可以通过校验信息恢复数据。
然而,RAID 5的写入性能相对较低。
RAID 10是RAID 1和RAID 0的结合,它将数据分散存储在多个磁盘上,并通过镜像备份提供冗余性。
RAID 10的优势在于能够提供较高的读取和写入性能,同时具备较好的容错能力。
然而,RAID 10的缺点是存储效率较低,因为每个磁盘都需要存储完整的数据。
除了上述常见的RAID级别外,还存在一些其他的RAID级别,如RAID 2、RAID 3、RAID 4和RAID 6等。
基本的RAID介绍RAID是英文Redundant Array of Independent Disks(独立磁盘冗余阵列),简称磁盘阵列.下面将各个级别的RAID介绍如下。
RAID0条带化(Stripe)存储。
理论上说,有N个磁盘组成的RAID0是单个磁盘读写速度的N 倍.RAID 0连续以位或字节为单位分割数据,并行读/写于多个磁盘上,因此具有很高的数据传输率,但它没有数据冗余,因此并不能算是真正的RAID结构.RAID1镜象(Mirror)存储。
它是通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据。
当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID 1可以提高读取性能。
RAID 1是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。
当一个磁盘失效时,系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。
RAID2海明码(Hamming Code)校验条带存储.将数据条块化地分布于不同的硬盘上,条块单位为位或字节,使用称为海明码来提供错误检查及恢复。
这种编码技术需要多个磁盘存放检查及恢复信息,使得RAID 2技术实施更复杂,因此在商业环境中很少使用。
RAID3奇偶校验(XOR)条带存储,共享校验盘,数据条带存储单位为字节。
它同RAID 2非常类似,都是将数据条块化分布于不同的硬盘上,区别在于RAID 3使用简单的奇偶校验,并用单块磁盘存放奇偶校验信息.如果一块磁盘失效,奇偶盘及其他数据盘可以重新产生数据;如果奇偶盘失效则不影响数据使用.RAID 3对于大量的连续数据可提供很好的传输率,但对于随机数据来说,奇偶盘会成为写操作的瓶颈。
RAID4奇偶校验(XOR)条带存储,共享校验盘,数据条带存储单位为块.RAID 4同样也将数据条块化并分布于不同的磁盘上,但条块单位为块或记录。
RAID 4使用一块磁盘作为奇偶校验盘,每次写操作都需要访问奇偶盘,这时奇偶校验盘会成为写操作的瓶颈,因此RAID 4在商业环境中也很少使用。
raid(独立冗余磁盘阵列)基础知识RAID(独立冗余磁盘阵列)基础知识一. 什么是RAID?RAID是独立冗余磁盘阵列(Redundant Array of Independent Disks)的缩写,是一种通过将多个磁盘组合在一起来提供高数据性能和冗余存储的技术。
RAID技术通过将数据分散存储在多个磁盘上,实现数据的冗余备份和提高系统性能。
二. RAID的基本原理RAID通过将数据切分成多个块,并将这些块分别存储在不同的磁盘上,以实现数据的冗余备份和提高读写性能。
常见的RAID级别包括RAID 0、RAID 1、RAID 5、RAID 6等。
1. RAID 0:条带化(Striping)RAID 0将数据切分成固定大小的块,并将这些块依次存储在多个磁盘上,提高了数据的读写性能。
然而,RAID 0没有冗余备份功能,一旦其中一个磁盘损坏,所有数据都将丢失。
2. RAID 1:镜像化(Mirroring)RAID 1将数据同时写入两个磁盘,实现了数据的冗余备份。
当其中一个磁盘损坏时,另一个磁盘仍然可以正常工作,保证数据的可靠性。
然而,RAID 1并没有提高数据的读写性能。
3. RAID 5:条带化加分布式奇偶校验(Striping with Distributed Parity)RAID 5将数据切分成固定大小的块,并在多个磁盘上存储数据和奇偶校验位。
奇偶校验位用于恢复损坏的数据。
RAID 5的读写性能较高,并且具有冗余备份功能。
然而,当多个磁盘损坏时,数据恢复的时间和复杂度较高。
4. RAID 6:双分布式奇偶校验(Double Distributed Parity)RAID 6是在RAID 5的基础上增加了第二个奇偶校验位,提高了数据的冗余备份能力。
RAID 6可以同时容忍两个磁盘的损坏,提供了更高的数据可靠性。
三. RAID的优缺点RAID技术具有以下优点:1. 提高数据的读写性能:通过条带化技术,数据可以同时从多个磁盘读取或写入,提高了系统的读写性能。
.磁盘阵列RAID原理、种类及性能优缺点对比磁盘阵列(Redundant Arrays of Independent Disks,RAID)1. 存储的数据一定分片;2. 分基于软件的软RAID(如mdadm)和基于硬件的硬RAID(如RAID 卡);3. RAID卡如同网卡一样有集成板载的也有独立的(PCI-e),一般独立RAID卡性能相对较好,淘宝一搜便可看到他们的原形;4. 现在基本上服务器都原生硬件支持几种常用的RAID;5. 当然还有更加高大上的专用于存储的磁盘阵列柜产品,有专用存储技术,规格有如12/24/48盘一柜等,盘可选机械/固态,3.5/2.5寸等。
近来想建立一个私有云系统,涉及到安装使用一台网络存储服务器。
对于服务器中硬盘的连接,选用哪种RAID模式能准确满足需求收集了资料,简单整理后记录如下:一、RAID模式优缺点的简要介绍目前被运用较多的RAID模式其优缺点大致是这样的:1、RAID0模式优点:在RAID 0状态下,存储数据被分割成两部分,分别存储在两块硬盘上,此时移动硬盘的理论存储速度是单块硬盘的2倍,实际容量等于两块硬盘中较小一块硬盘的容量的2倍。
缺点:任何一块硬盘发生故障,整个RAID上的数据将不可恢复。
备注:存储高清电影比较适合。
2、RAID1模式优点:此模式下,两块硬盘互为镜像。
当一个硬盘受损时,换上一块全新硬盘(大于或等于原硬盘容量)替代原硬盘即可自动恢复资料和继续使用,移动硬盘的实际容量等于较小一块硬盘的容量,存储速度与单块硬盘相同。
RAID 1的优势在于任何一块硬盘出现故障是,所存储的数据都不会丢失。
缺点:该模式可使用的硬盘实际容量比较小,仅仅为两颗硬盘中最小硬盘的容量。
备注:非常重要的资料,如数据库,个人资料,是万无一失的存储方案。
3、RAID 0+1模式RAID 0+1是磁盘分段及镜像的结合,采用2组RAID0的磁盘阵列互为镜像,它们之间又成为一个RAID1的阵列。
磁盘阵列(Raid)介绍-常见的类型RAID 0:把多个磁盘合并成一个大的磁盘,不具有冗余功能,并行I/O ,速度最快。
它是将多个磁盘并列起来,成为一个大硬盘。
在存放数据时,其将数据按磁盘的个数来进行分段,据按磁盘的个数来进行分段,然后同时将这些数据写进这些磁盘中。
然后同时将这些数据写进这些磁盘中。
然后同时将这些数据写进这些磁盘中。
所以,所以,所以,在所在所有的级别中,RAID 0的速度是最快的。
但是RAID 0没有冗余功能,如果一个磁盘(物理)损坏,则所有的数据都无法使用。
损坏,则所有的数据都无法使用。
RAID 1:两组相同的磁盘系统互作镜像,速度没有提高,但是允许单个磁盘出错,可靠性最高。
RAID 1就是镜像。
其原理为在主硬盘上存放数据的同时也在镜像硬盘上写一样的数据。
当主硬盘(物理)损坏时,镜像硬盘则代替主硬盘的工作。
因为有镜像硬盘做数据备份,所以RAID 1的数据安全性在所有的RAID 级别上来说是最好的。
但是其磁盘的利用率却只有50%,是所有RAID 上磁盘利用率最低的一个级别。
用率最低的一个级别。
RAID 3 存放数据的原理和RAID 0、RAID 1不同。
RAID 3是以一个硬盘来存放数据的奇偶校验位,数据则分段存储于其余硬盘中。
它象RAID 0一样以并行的方式来存放数,但速度没有RAID 0快。
如果数据盘(物理)损坏,只要将坏硬盘换掉,RAID 控制系统则会根据校验盘的数据校验位在新盘中重建坏盘上的数据。
利用单独的校验盘来保护数据虽然没有镜像的安全性高,但是硬盘利用率得到了很大的提高,为n-1。
但缺点是作为存放校验位的硬盘,工作负荷会很大,因为每次写操作,都会把生成的校验信息写入该磁盘,而其它磁盘的负荷相对较小,这会对性能有一定的影响。
小,这会对性能有一定的影响。
RAID 5:RAID 5是在RAID 3的基础上进行了一些改进,当向阵列中的磁盘写数据,奇偶校验数据均匀存放在阵列中的各个盘上,允许单个磁盘出错。
磁盘阵列知识点分类磁盘阵列其样式有三种,一是外接式磁盘阵列柜、二是内接式磁盘阵列卡,三是利用软件来仿真。
数据重构磁盘阵列还能利用同位检查(Parity Check)的观念,在数组中任一颗硬盘故障时,仍可读出数据,在数据重构时,将数据经计算后重新置入新硬盘中RAID:厂商LSI(半导体和软件供应商):其主要产品包括:RAID控制器、SSD控制器。
MegaRAID、Nytro和Syncro都是LSI 针对RAID而推出的解决方案,并且一直在创造更新。
LSI MegaRAID的主要定位是保护数据,通过高性能、高可靠的RAID控制器功能,为数据提供高级别的保护。
LSI MegaRAID在业界有口皆碑。
LSI Nytro的主要定位是数据加速,它充分利用当今备受追捧的闪存技术,极大地提高数据I/O速度。
LSI Nytro包括三个系列:LSI Nytro WarpDrive加速卡、LSI Nytro XD 应用加速存储解决方案和LSI Nytro MegaRAID 应用加速卡。
Nytro MegaRAID主要用于DAS环境,Nytro WarpDrive加速卡主要用于SAN和NAS环境,Nytro XD解决方案由Nytro WarpDrive加速卡和Nytro XD 智能高速缓存软件两部分构成。
LSI Syncro的定位主要用于数据共享,提高系统的可用性、可扩展性,降低成本。
LSI通过MegaRAID提供基本的可靠性保障;通过Nytro实现加速;通过Syncro突破容量瓶颈,让价格低廉的存储解决方案可以大规模扩展,并且进一步提高可靠性。
LSI MegaRAID SAS 8708EM2的参数LSI MegaRAID SAS 8708EM2详细参数主要性能RAID功能:RAID 0、1、5 和6接口: Serial SATA/SAS内置接口:8数据传输率:3Gb/s最多连接设备:32个插槽类型:PCI-ERAID类型优缺点RAID0没有冗余功能,如果一个磁盘(物理)损坏,则所有的数据都无法使用。
磁盘阵列技术磁盘阵列技术磁盘阵列技术是一种通过将多个硬盘组合在一起,形成一个逻辑上的单一存储设备的技术。
它能够提供更高的存储容量、更快的数据读写速度和更高的数据可靠性。
本文将从以下几个方面详细介绍磁盘阵列技术。
一、磁盘阵列基础知识1. 磁盘阵列定义磁盘阵列指的是将多个硬盘组合成一个逻辑上的单一存储设备,以提供更高的存储容量、更快的数据读写速度和更高的数据可靠性。
2. 磁盘阵列类型常见的磁盘阵列类型包括RAID 0、RAID 1、RAID 5、RAID 6等。
其中,RAID 0可以提供较高的读写速度,但没有冗余机制;RAID 1可以提供较高的数据可靠性,但存储容量较低;RAID 5和RAID 6则兼具了读写速度和数据可靠性,并且能够实现部分硬盘故障时仍然能够正常运行。
3. 磁盘阵列控制器磁盘阵列控制器是磁盘阵列的核心组成部分,它负责管理和控制硬盘的读写操作,并提供RAID级别的数据保护功能。
磁盘阵列控制器可以分为软件RAID和硬件RAID两种类型,其中硬件RAID通常性能更好、可靠性更高。
二、磁盘阵列实现原理1. RAID 0实现原理RAID 0通过将数据块分散存储在多个硬盘上,从而实现读写速度的提升。
例如,如果有两个硬盘A和B,那么一个10MB的文件可以被分成两个5MB的块,分别存储在A和B上。
当需要读取这个文件时,两个硬盘可以同时进行读取操作,从而实现读取速度的加快。
2. RAID 1实现原理RAID 1通过将数据同时存储在多个硬盘上,从而实现数据冗余备份。
例如,如果有两个硬盘A和B,在RAID 1中它们会被视为一个逻辑上的单一存储设备,并且所有数据都会被同时写入到A和B中。
当其中一个硬盘出现故障时,另一个硬盘仍然可以继续工作,从而保证数据的可靠性。
3. RAID 5实现原理RAID 5通过将数据块分散存储在多个硬盘上,并使用奇偶校验码来实现数据冗余备份。
例如,如果有三个硬盘A、B和C,在RAID 5中它们会被视为一个逻辑上的单一存储设备,并且所有数据都会被分成多个块,分别存储在A、B和C中。
磁盘阵列基本原理磁盘阵列(RAID)是一种通过将多个磁盘驱动器组合在一起来提供更高性能、更大存储容量和更高容错能力的技术。
它通过将数据分散存储在多个磁盘上,以实现更快的数据读写速度和更好的数据冗余保护。
RAID技术有多种级别,每种级别都有其独特的数据分布和冗余机制。
下面将介绍几种常见的RAID级别及其基本原理。
1. RAID 0:RAID 0是一种条带化(striping)技术,它将数据分散存储在多个磁盘上,从而提高数据读写速度。
数据被分成块,并按顺序写入不同的磁盘。
当读取数据时,多个磁盘可以同时工作,从而提供更高的吞吐量。
然而,RAID 0没有冗余机制,如果其中一个磁盘故障,所有数据都将丢失。
2. RAID 1:RAID 1是一种镜像(mirroring)技术,它将数据同时写入两个磁盘,从而实现数据的冗余备份。
当其中一个磁盘故障时,另一个磁盘仍然可以提供数据访问。
RAID 1提供了很高的数据可靠性,但存储容量利用率较低,因为每一个数据都需要在两个磁盘上存储一份。
3. RAID 5:RAID 5是一种条带化和分布式奇偶校验(distributed parity)技术的组合。
它将数据和奇偶校验信息分别存储在多个磁盘上,以提供更高的数据读写速度和冗余保护。
奇偶校验信息用于恢复故障磁盘上的数据。
RAID 5至少需要三个磁盘,其中一个磁盘用于存储奇偶校验信息。
当其中一个磁盘故障时,系统可以通过奇偶校验信息计算出丢失的数据。
4. RAID 6:RAID 6是在RAID 5的基础上增加了第二个奇偶校验信息。
它需要至少四个磁盘,并可以容忍两个磁盘的故障。
RAID 6提供了更高的容错能力,但相应地增加了存储开消。
5. RAID 10:RAID 10是RAID 1和RAID 0的组合。
它将数据分散存储在多个磁盘上,并通过镜像技术实现数据的冗余备份。
RAID 10提供了更高的数据读写速度和数据可靠性,但需要至少四个磁盘,且存储容量利用率较低。
磁盘阵列方案简介磁盘阵列(RAID)是一种将多个磁盘组合在一起,形成一个逻辑驱动器的技术。
它通过将数据分散存储在多个磁盘上,提高了数据的可靠性和性能。
在本文中,我们将介绍磁盘阵列的基本原理,并讨论几种常见的磁盘阵列方案。
磁盘阵列的原理磁盘阵列基于两个基本原理:数据分散(striping)和冗余(redundancy)。
数据分散是指将数据分成多个块,然后将这些数据块存储在多个磁盘上。
每个磁盘都存储一部分数据,这样可以提高读写数据的并发性和性能。
冗余是指将数据的冗余副本存储在不同的磁盘上。
冗余数据可以用于数据恢复和提高数据的可靠性。
当一个磁盘发生故障时,系统可以使用冗余数据来恢复丢失的数据。
常见的磁盘阵列方案1. RAID 0RAID 0是最基本的磁盘阵列方案,它只实现了数据分散功能,没有冗余。
RAID 0将数据块分散存储在多个磁盘上,以提高读写性能。
然而,由于没有冗余,任何一个磁盘的故障都会导致数据的完全丢失。
因此,RAID 0不适用于需要高可靠性的应用。
2. RAID 1RAID 1是一种基于冗余的磁盘阵列方案。
它将数据的完全副本存储在另一个磁盘上。
当一个磁盘发生故障时,系统可以使用冗余数据来恢复丢失的数据。
RAID 1提供了较高的数据可靠性,但读写性能较低,因为需要同时写入两个磁盘。
3. RAID 5RAID 5是一种基于数据分散和冗余的磁盘阵列方案。
它将数据分成多个块,并将每个块的校验信息存储在不同的磁盘上。
当一个磁盘发生故障时,系统可以使用校验信息和其他磁盘上的数据来恢复丢失的数据。
RAID 5提供了较高的数据可靠性和读写性能,并且可以容忍单个磁盘的故障。
4. RAID 6RAID 6是一种更高级的磁盘阵列方案,它提供了比RAID 5更高的数据可靠性。
RAID 6使用两个磁盘来存储数据的校验信息,这样可以容忍两个磁盘的故障。
RAID 6可以提供更高的数据可靠性,但写入性能相对较低。
5. RAID 10RAID 10是一种组合了RAID 1和RAID0的磁盘阵列方案。
基本的RAID介绍RAID是英文Redundant Array of Independent Disks(独立磁盘冗余阵列),简称磁盘阵列。
下面将各个级别的RAID介绍如下。
RAID0条带化(Stripe)存储。
理论上说,有N个磁盘组成的RAID0是单个磁盘读写速度的N 倍。
RAID 0连续以位或字节为单位分割数据,并行读/写于多个磁盘上,因此具有很高的数据传输率,但它没有数据冗余,因此并不能算是真正的RAID结构。
RAID1镜象(Mirror)存储。
它是通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据。
当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID 1可以提高读取性能。
RAID 1是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。
当一个磁盘失效时,系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。
RAID2海明码(Hamming Code)校验条带存储。
将数据条块化地分布于不同的硬盘上,条块单位为位或字节,使用称为海明码来提供错误检查及恢复。
这种编码技术需要多个磁盘存放检查及恢复信息,使得RAID 2技术实施更复杂,因此在商业环境中很少使用。
RAID3奇偶校验(XOR)条带存储,共享校验盘,数据条带存储单位为字节。
它同RAID 2非常类似,都是将数据条块化分布于不同的硬盘上,区别在于RAID 3使用简单的奇偶校验,并用单块磁盘存放奇偶校验信息。
如果一块磁盘失效,奇偶盘及其他数据盘可以重新产生数据;如果奇偶盘失效则不影响数据使用。
RAID 3对于大量的连续数据可提供很好的传输率,但对于随机数据来说,奇偶盘会成为写操作的瓶颈。
RAID4奇偶校验(XOR)条带存储,共享校验盘,数据条带存储单位为块。
RAID 4同样也将数据条块化并分布于不同的磁盘上,但条块单位为块或记录。
RAID 4使用一块磁盘作为奇偶校验盘,每次写操作都需要访问奇偶盘,这时奇偶校验盘会成为写操作的瓶颈,因此RAID 4在商业环境中也很少使用。
RAID5奇偶校验(XOR)条带存储,校验数据分布式存储,数据条带存储单位为块。
RAID 5不单独指定的奇偶盘,而是在所有磁盘上交叉地存取数据及奇偶校验信息。
在RAID 5上,读/写指针可同时对阵列设备进行操作,提供了更高的数据流量。
RAID 5更适合于小数据块和随机读写的数据。
RAID 3与RAID 5相比,最主要的区别在于RAID 3每进行一次数据传输就需涉及到所有的阵列盘;而对于RAID 5来说,大部分数据传输只对一块磁盘操作,并可进行并行操作。
在RAID 5中有“写损失”,即每一次写操作将产生四个实际的读/写操作,其中两次读旧的数据及奇偶信息,两次写新的数据及奇偶信息。
当进行恢复时,比如我们需要需要恢复下图中的A0,这里就必须需要B0、C0、D0加0 parity才能计算并得出A0,进行数据恢复。
所以当有两块盘坏掉的时候,整个RAID的数据失效。
RAID6奇偶校验(XOR)条带存储,两个分布式存储的校验数据,数据条带存储单位为块。
与RAID 5相比,RAID 6增加了第二个独立的奇偶校验信息块。
两个独立的奇偶系统使用不同的算法,数据的可靠性非常高,即使两块磁盘同时失效也不会影响数据的使用。
但RAID 6需要分配给奇偶校验信息更大的磁盘空间,相对于RAID 5有更大的“写损失”,因此“写性能”非常差。
较差的性能和复杂的实施方式使得RAID 6很少得到实际应用。
RAID7这是一种新的RAID标准,其自身带有智能化实时操作系统和用于存储管理的软件工具,可完全独立于主机运行,不占用主机CPU资源。
RAID 7可以看作是一种存储计算机(Storage Computer),它与其他RAID标准有明显区别。
RAID 7等级是至今为止,理论上性能最高的RAID模式,因为它从组建方式上就已经和以往的方式有了重大的不同。
基本成形式见图,以往一个硬盘是一个组成阵列的“柱子”,而在RAID 7中,多个硬盘组成一个“柱子”,它们都有各自的通道,也正因为如此,你可以把这个图分解成一个个硬盘连接在主通道上,只是比以前的等级更为细分了。
这样做的好处就是在读/写某一区域的数据时,可以迅速定位,而不会因为以往因单个硬盘的限制同一时间只能访问该数据区的一部分,在RAID 7中,以前的单个硬盘相当于分割成多个独立的硬盘,有自己的读写通道。
工程中常用的RAID方式是RAID10和RAID5。
下面分别介绍RAID10和RAID01的区别;以及RAID10和RAID5的区别。
RAID10和RAID01的比较➢RAID10是先做镜象,然后再做条带。
➢RAID01则是先做条带,然后再做镜象。
比如以6个盘为例,RAID10就是先将盘分成3组镜象,然后再对这3个RAID1做条带。
RAID01则是先利用3块盘做RAID0,然后将另外3块盘做为RAID0的镜象。
下面以4块盘为例来介绍安全性方面的差别:1、RAID10的情况这种情况中,我们假设当DISK0损坏时,在剩下的3块盘中,只有当DISK1一个盘发生故障时,才会导致整个RAID失效,我们可简单计算故障率为1/3。
2、RAID01的情况这种情况下,我们仍然假设DISK0损坏,这时左边的条带将无法读取。
在剩下的3块盘中,只要DISK2,DISK3两个盘中任何一个损坏,都会导致整个RAID失效,我们可简单计算故障率为2/3。
因此RAID10比RAID01在安全性方面要强。
从数据存储的逻辑位置来看,在正常的情况下RAID01和RAID10是完全一样的,而且每一个读写操作所产生的IO数量也是一样的,所以在读写性能上两者没什么区别。
而当有磁盘出现故障时,比如前面假设的DISK0损坏时,我们也可以发现,这两种情况下,在读的性能上面也将不同,RAID10的读性能将优于RAID01。
RAID10和RAID5的比较为了方便对比,这里拿同样多驱动器的磁盘来做对比,RAID5选择3D+1P的RAID方案,RAID10选择2D+2D的RAID方案,如图:1、安全性方面的比较其实在安全性方面,勿须质疑,肯定是RAID10的安全性高于RAID5。
我们也可以从简单的分析来得出。
当盘1损坏时,对于RAID10,只有当盘1对应的镜象盘损坏,才导致RAID 失效。
但是对于RAID5,剩下的3块盘中,任何一块盘故障,都将导致RAID失效。
在恢复的时候,RAID10恢复的速度也快于RAID5。
2、空间利用率的比较RAID10的利用率是50%,RAID5的利用率是75%。
硬盘数量越多,RAID5的空间利用率越高。
3、读写性能方面的比较主要分析分析如下三个过程:读,连续写,离散写。
在介绍这三个过程之前,先介绍一个特别重要的概念:cache。
cache已经是整个存储的核心所在,就是中低端存储,也有很大的cache存在,包括最简单的raid卡,一般都包含有几十,甚至几百兆的raid cache。
cache的主要作用是什么呢?体现在读与写两个不同的方面,如果作为写,一般存储阵列只要求写到cache就算完成了写操作,所以,阵列的写是非常快速的,在写cache的数据积累到一定程度,阵列才把数据刷到磁盘,可以实现批量的写入,至于cache数据的保护,一般都依赖于镜相与电池(或者是UPS)。
cache的读一样不可忽视,因为如果读能在cache中命中的话,将减少磁盘的寻道,因为磁盘从寻道开始到找到数据,一般都在6ms以上,而这个时间,对于那些密集型io的应用可能不是太理想。
但是,如果cache能命中,一般响应时间则可以在1ms以内。
两者应该相差3个数量级(1000倍)。
1)读操作方面的性能差异RAID10可供读取有效数据的磁盘个数为4,RAID5可供读取有效数据的磁盘个数也为4个(校验信息分布在所有的盘上),所以两者的读的性能应该是基本一致的。
2)连续写方面的性能差异在连续写操作过程,如果有写cache存在,并且算法没有问题的话,RAID5比RAID10甚至会更好一些,虽然也许并没有太大的差别。
(这里要假定存储有一定大小足够的写cache,而且计算校验的cpu不会出现瓶颈)。
因为这个时候的RAID校验是在cache中完成,如4块盘的RAID5,可以先在内存中计算好校验,同时写入3个数据+1个校验。
而RAID10只能同时写入2个数据+2个镜相。
如上图所示,4块盘的RAID5可以在同时间写入1、2、3到cache,并且在cache计算好校验之后,这里假定是6,同时把三个数据写到磁盘。
而4块盘的RAID10不管cache是否存在,写的时候,都是同时写2个数据与2个镜相。
根据前面对缓存原理的介绍,写cache是可以缓存写操作的,等到缓存写数据积累到一定时期再写到磁盘。
但是,写到磁盘阵列的过程是迟早也要发生的,所以RAID5与RAID10在连续写的情况下,从缓存到磁盘的写操作速度会有较小的区别。
不过,如果不是连续性的强连续写,只要不达到磁盘的写极限,差别并不是太大。
3)离散写方面的性能差异例如oracle 数据库每次写一个数据块的数据,如8K;由于每次写入的量不是很大,而且写入的次数非常频繁,因此联机日志看起来会像是连续写。
但是因为不保证能够添满RAID5的一个条带,比如32K(保证每张盘都能写入),所以很多时候更加偏向于离散写入(写入到已存在数据的条带中)。
我们从上图看一下离散写的时候,RAID5与RAID10工作方式有什么不同。
如上图:我们假定要把一个数字2变成数字4,那么对于RAID5,实际发生了4次io:先读出2与校验6,可能发生读命中然后在cache中计算新的校验写入新的数字4与新的校验8。
如上图我们可以看到:对于RAID10,同样的单个操作,最终RAID10只需要2个io,而RAID5需要4个io.这里我忽略了RAID5在那两个读操作的时候,可能会发生读命中操作的情况。
也就是说,如果需要读取的数据已经在cache中,可能是不需要4个io的。
这也证明了cache对RAID5 的重要性,不仅仅是计算校验需要,而且对性能的提升尤为重要。
当然,并不是说cache对RAID10就不重要了,因为写缓冲,读命中等,都是提高速度的关键所在,只不过RAID10对cache的依赖性没有RAID5那么明显而已。
4)磁盘的IOPS对比假定一个case,业务的iops是10000,读cache命中率是30%,读iops为60%,写iops 为40%,磁盘个数为120,那么分别计算在raid5与raid10的情况下,每个磁盘的iops为多少。
raid5:单块盘的iops = (10000*(1-0.3)*0.6 + 4 * (10000*0.4))/120= (4200 + 16000)/120= 168这里的10000*(1-0.3)*0.6表示是读的iops,比例是0.6,除掉cache命中,实际只有4200个iops。