当前位置: 资讯 > 美国G口大带宽服务器 >RAID技术
RAID最早称为廉价冗余磁盘阵列,后来改为独立冗余磁盘阵列,它是用多台磁盘存储器组成的大容量外存系统。其构造基础是利用数据分块技术和并行处理技术,在多个磁盘上交错存放数据,使之可以并行存取。在RAID控制器的组织管理下,可实现数据的并行存储、交叉存储、单独存储。由于阵列中的部分磁盘存有冗余信息, -且系统中某一 磁盘失效,可以利用冗余信息重建用户信息。
RAID是1988年由美国加州大学伯克利分校一个研究小组提出的, 它的设计理念是用多个小容量磁盘代替一个 大容量磁盘,并用分布数据的方法能够同时从多个磁盘中存取数据,因而改善了I/O性能,增加了存储容量,现已在超级或大型计算机中使用7工业上制定了一个称为RAID的标准,它分为7级(RAID 0~RAID 6)。这些级别不是表示层次关系,而是指出了不同存储容量、可靠性、数据传输能力、I/O 请求速率等方面的应用需求。
下面以RAID 0级为例来说明。考虑到低成本比可靠性更重要,RAID 0未采用奇偶校验等冗余技术。RAID 0用于高速数据传输和高速I/O请求。
对RAID 0,用户和系统数据分布在阵列中的所有磁盘上。与单个大容量磁盘相比,其优点是:如果两个10请求正在等待两个不同的数据块,则被请求的块有可能在不同的盘上。因此,两个请求能够并行发出,减少了I/0排队的时间。
相关服务:美国G口大带宽服务器租用
下面来讲讲其他的RAID 1, RAID 2, RAID 3, RAID 4, RAID 5, RAID 6, RAID 10:
RAID 1:
RAID1是将一个两块硬盘所构成RAID磁盘阵列,其容量仅等于一块硬盘的容量,因为另一块只是当作数据“镜像”。RAID 1磁盘阵列显然是最可靠的一种阵列,因为它总是保持一份完整的数据备份。它的性能自然没有RAID 0磁盘阵列那样好,但其数据读取确实较单一硬盘来的快,因为数据会从两块硬盘中较快的一块中读出。RAID 1磁盘阵列的写入速度通常较慢,因为数据得分别写入两块硬盘中并做比较。RAID 1磁盘阵列一般支持“热交换”,就是说阵列中硬盘的移除或替换可以在系统运行时进行,无须中断退出系统。RAID 1磁盘阵列是十分安全的,不过也是较贵一种RAID磁盘阵列解决方案,因为两块硬盘仅能提供一块硬盘的容量。RAID 1磁盘阵列主要用在数据安全性很高,而且要求能够快速恢复被破坏的数据的场合。
优点:当一个硬盘受损时,换上一块全新硬盘(大于或等于原硬盘容量)替代原硬盘即可自动恢复资料和继续使用,移动硬盘的实际容量等于较小一块硬盘的容量,存储速度与单块硬盘相同。RAID 1的优势在于任何一块硬盘出现故障是,所存储的数据都不会丢失。
缺点:该模式可使用的硬盘实际容量比较小,仅仅为两颗硬盘中最小硬盘的容量。
RAID2:
RAID 2是为大型机和超级计算机开发的带汉明码校验磁盘阵列。它是将数据条带化地分布于不同的硬盘上,条块单位为位或者字节,并使用“加重平均纠错码”的编码技术来提供错误检查及恢复,这种纠错码也被称为“海明码”。海明码需要多个磁盘存放检查及恢复信息,使得RAID2技术实施更复杂,因此在商业环境中很少使用。 RAID2的设计是使用共轴同步的技术,存取数据时整个磁盘陈列一起工作,在各个磁盘的相同位置做平行存取,所以有最短的存取时间,其总线是特别的设计,以大带宽并行传输所存取的数据。在大型文件的存取应用中,RAID2有最好的性能,但是如果文件太小,将会影响其性能,因为磁盘的存取是以扇区为单位,而RAID2的存取是所以磁盘平行动作,而且是进行位的存取,所以小于一个扇区的数据量会使其性能大打折扣。 RAID2是设计给需要连续存取大量数据的计算机使用的,如进行影像处理或者CAD/CAM的工作站等,并不适用于一般的多用户环境、网络服务器和PC。
优点:在写入时,RAID 2在写入数据位同时还要计算出它们的汉明码并写入校验阵列,读取时也要对数据即时地进行校验,最后再发向系统。通过上文的介绍,我们知道汉明码只能纠正一个位的错误,所以RAID 2也只能允许一个硬盘出问题,如果两个或以上的硬盘出问题,RAID 2的数据就将受到破坏。但由于数据是以位为单位并行传输,所以传输率也相当快。
缺点:RAID 2是早期为了能进行即时的数据校验而研制的一种技术(这在当时的RAID 0、1等级中是无法做到的),从它的设计上看也是主要为了即时校验以保证数据安全,针对了当时对数据即时安全性非常敏感的领域,如服务器、金融服务等。但由于花费太大(其实,从上面的分析中可以看出如果数据位宽越大,用于校验阵列的相对投资就会越小,就如上面的4:3与64:7),成本昂贵,目前已基本不再使用,转而以更高级的即时检验RAID所代替,如RAID 3、5等。
RAID3:
RAID3是把数据分成多个“块”,按照一定的容错算法,存放在N+1个硬盘上,实际数据占用的有效空间为N个硬盘的空间总和,而第N+1个硬盘存储的数据是校验容错信息,当这N+1个硬盘中的其中一个硬盘出现故障时,从其它N个硬盘中的数据也可以恢复原始数据。RAID3的数据存取方式和RAID2一样,把数据以位为单位来分割并且存储到各个硬盘上,并且在数据安全方面以奇偶校验取代海明码做错误校正及检测,所以只需要一个额外的校验盘。奇偶校验值的计算是以各个硬盘的相对应位进行异或的逻辑运算,然后将结果写入奇偶校验硬盘。
RAID 3是在RAID 2基础上发展而来的,主要的变化是用相对简单的异或逻辑运算(XOR,eXclusive OR)校验代替了相对复杂的汉明码校验,从而也大幅降低了成本。
优缺点:在使用RAID3的过程中还有其它一些性能上的问题需要引起注意。RAID3存在的最大的一个不足,同时也是导致RAID3很少被人们采用的原因就是校验盘很容易成为整个系统的瓶颈。我们已经知道,RAID3会把数据写入操作分散到多个硬盘上进行,然而不管是向哪一个数据盘写入数据,都需要同时重写校验盘中的相关信息。因此,对于那些经常需要执行大量写入操作的应用来说,校验盘的负载将会很大,无法满足程序的运行速度,从而导致整个RAID系统性能的下降。鉴于这种原因,RAID3更加适合应用于那些写入操作较少,读取操作较多的应用环境,如数据库和web服务器等。与RAID0相比,RAID3在读写速度方面相对较慢。使用的容错算法和分块大小决定RAID使用的应用场合,在通常情况下,RAID3比较适合大文件类型且安全性要求较高的应用,如视频编辑、硬盘播出机、大型数据库等。
RAID4:
RAID4和RAID3很象,数据都是依次存储在多个硬盘之上,奇偶校验码存放在独立的奇偶校验盘上,唯一不同的是,在数据分割上RAID3对数据的访问是按位进行的,RAID4是以数据块为单位。即RAID 4是按数据块为单位存储的,那么数据块应该怎么理解呢?简单的话,一个数据块是一个完整的数据集合,比如一个文件就是一个典型的数据块。当然,对于硬盘的读取,一个数据块并不是一个文件,而是由操作系统所决定的,这就是我们熟悉的簇(Cluster)。RAID 4这样按块存储可以保证块的完整,不受因分条带存储在其他硬盘上而可能产生的不利影响(比如当其他多个硬盘损坏时,数据就完了)。
不过,在不同硬盘上的同级数据块也都通过XOR进行校验,结果保存在单独的校验盘。所谓同级的概念就是指在每个硬盘中同一柱面同一扇区位置的数据算是同级。在写入时,RAID就是按这个方法把各硬盘上同级数据的校验统一写入校验盘,等读取时再即时进行校验。因此即使是当前硬盘上的数据块损坏,也可以通过XOR校验值和其他硬盘上的同级数据进行恢复。由于RAID 4在写入时要等一个硬盘写完后才能写一下个,并且还要写入校验数据所以写入效率比较差,读取时也是一个硬盘一个硬盘的读,但校验迅速,所以相对速度更快。
优缺点:RAID4 也使用一个校验盘,各硬盘相同位置的分段形成一个校验硬盘分段,放在校验硬盘上。这种方式可在不同的硬盘平行执行不同的读取命令,大幅提高磁盘陈列的读取性能,但写入数据时,因受限于校验硬盘,同一时间只能做一次,启动所有硬盘读取数据形成同一校验分段的所有数据分段,与要写入的数据做好校验计算再写入。即使如此,小型文件的写入仍然要比RAID3快,因其校验计算较简单而非进行位的计算,但校验硬盘和RAID3一样,也形成其性能的瓶颈。在失败恢复时,它的难度比RAID3大得多了,控制器的设计难度也要大许多,而且访问数据的效率不怎么好。
RAID5:
读写:RAID5和RAID4一样,数据以块为单位分布到各个硬盘上。RAID 5不对数据进行备份,而是把数据和与其相对应的奇偶校验信息存储到组成RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上。当RAID5的一个磁盘数据损坏后,利用剩下的数据和相应的奇偶校验信息去恢复被损坏的数据。
储存:RAID5把数据和相对应的奇偶校验信息存储到组成RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上,其中任意N-1块磁盘上都存储完整的数据,也就是说有相当于一块磁盘容量的空间用于存储奇偶校验信息。因此当RAID5的一个磁盘发生损坏后,不会影响数据的完整性,从而保证了数据安全。当损坏的磁盘被替换后,RAID还会自动利用剩下奇偶校验信息去重建此磁盘上的数据,来保持RAID5的高可靠性。
做RAID 5阵列所有磁盘容量必须一样大,当容量不同时,会以最小的容量为准。 最好硬盘转速一样,否则会影响性能,而且可用空间=磁盘数n-1,RAID 5 没有独立的奇偶校验盘,所有校验信息分散放在所有磁盘上, 只占用一个磁盘的容量。
RAID6:
RAID 6是由一些大型企业提出来的私有RAID级别标准,它的全称叫“independent data disks with two independent distributed parity schemes(带有两个独立分布式校验方案的独立数据磁盘)”。这种RAID级别是在RAID 5的基础上发展而成,因此它的工作模式与RAID 5有异曲同工之妙,不同的是RAID 5将校验码写入到一个驱动器里面,而RAID 6将校验码写入到两个驱动器里面,这样就增强了磁盘的容错能力,同时RAID 6阵列中允许出现故障的磁盘也就达到了两个,但相应的阵列磁盘数量最少也要4个。
RAID-6 是在RAID-5基础上把校验信息由一位增加到两位的RAID 级别。
RAID-6和RAID-5一样对逻辑盘进行条带化然后存储数据和校验位,只是对每一位数据又增加了一位校验位。这样在使用RAID-6时会有两块硬盘用来存储校验位,增强了容错功能,同时必然会减少硬盘的实际使用容量。以前的RAID级别一般只允许一块硬盘坏掉,而RAID-6可以允许坏掉两块硬盘,因此,RAID-6 要求至少4块硬盘。
优缺点:在实际应用中RAID6的应用范围并没有其它的RAID模式那么广泛。因为实现这个功能一般需要设计更加复杂、造价更昂贵的RAID控制器,所以它一般也不会集成在主板上。
RAID6的性能:
既然RAID6是最新的RAID冗余技术,那么他的性能应该是非常不错的。

(1)RAID6的随机读取性能:很好(当使用大数据块时)。
(2)RAID6的随机写入性能:差,因为不但要在每硬盘上写入校验数据而且要在专门的校验硬盘上写入数据。
(3)RAID6的持续读取性能:好(当使用小数据块时)。
(4)RAID6的持续写入性能:一般。
(5)RAID6的优点:快速的读取性能,更高的容错能力。
(6)RAID6的缺点:很慢的写入速度,RAID控制器在设计上更加复杂,成本更高。
RAID6技术虽好不过并不是每个企业都可以用得到的,而且他的高额价格也不是谁都承担得起的,对于大部分中小企业来说数据的保存所需级别并没有那么高,这种情况下我们只需要使用常规的RAID5即可。就现在而言,对于那些数据中心,信息中心等对数据安全级别要求比较高的企业,使用RAID6保护数据还是有必要的。
RAID10:
RAID10最少需要4块硬盘才能完成。把2块硬盘组成一个RAID1,然后两组RAID1组成一个RAID0。虽然RAID10方案造成了50%的磁盘浪费,但是它提供了200%的速度和单磁盘损坏的数据安全性。
服务器组成分硬件跟网络:硬件英特尔,网络线路方面是多线bgp 针对国内优化 电信移动联通3c直连 3c精品网 专线直连。
RAID 1+0 也被称为RAID 10标准,实际是将RAID 1和RAID 0标准结合的产物,在连续地以位或字节为单位分割数据并且并行读/写多个磁盘的同时,为每一块磁盘作磁盘镜像进行冗余。它的优点是同时拥有RAID 0的超凡速度和RAID 1的数据高可靠性,但是CPU占用率同样也更高,而且磁盘的利用率比较低。由于利用了RAID 0极高的读写效率和RAID 1较高的数据保护、恢复能力,使RAID 10成为了一种性价比较高的等级,目前几乎所有的RAID控制卡都支持这一等级。但是,RAID 10对存储容量的利用率和RAID 1一样低,只有50%。因此,RAID10即高可靠性与高效磁盘结构它是一个带区结构加一个镜象结构,可以达到既高速又安全的目的,RAID 10能提供比RAID 5更好的性能。这种新结构的可扩充性不好,这种解决方案被广泛应用,使用此方案比较昂贵。
RAID10也被称为镜象阵列条带。像RAID0一样,数据跨磁盘抽取;像RAID1一样,每个磁盘都有一个镜象磁盘, 所以RAID 10的另一种会说法是 RAID 1+0。RAID10提供100%的数据冗余,支持更大的卷尺寸,但价格也相对较高。对大多数只要求具有冗余度而不必考虑价格的应用来说,RAID10提供最好的性能。使用RAID10,可以获得更好的可靠性,因为即使两个物理驱动器发生故障,每个阵列中都有一个,数据仍然可以得到保护。RAID10需要4 + 2*N 个磁盘驱动器(N >=0), 而且只能使用其中一半或更小的磁盘用量, 例如 4 个 250G 的硬盘使用RAID10 阵列, 实际容量是 500G。