磁盘阵列
定义:RAID(磁盘阵列)是由很多块独立的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上。加利福尼亚大学伯克利分校(UniversityofCalifornia-Berkeley)在1988年,发表了文章:“ACaseforRedundantArraysofInexpensiveDisks”。文章中,谈到了RAID这个词汇,而且定义了RAID的5层级。伯克利大学研究目的是反映当时CPU快速的性能。CPU效能每年大约成长30~50%,而硬磁机只能成长约7%。研究小组希望能找出一种新的技术,在短期内,立即提升效能来平衡计算机的运算能力。在当时,柏克莱研究小组的主要研究目的是效能与成本。另外,研究小组也设计出容错(fault-tolerance),逻辑数据备份(logicaldataredundancy),而产生了RAID理论。研究初期,便宜(Inexpensive)的磁盘也是主要的重点,但后来发现,大量便宜磁盘组合并不能适用于现实的生产环境,后来Inexpensive被改为independent,许多独立的磁盘组。RAID技术主要有以下三个基本功能:(1)通过对磁盘上的数据进行条带化,实现对数据成块存取,减少磁盘的机械寻道时间,提高了数据存取速度。(2)通过对一个阵列中的几块磁盘同时读取,减少了磁盘的机械寻道时间,提高数据存取速度。(3)通过镜像或者存储奇偶校验信息的方式,实现了对数据的冗余保护。RAID分为了以下几个级别:RAIDJBODRAIDJBOD的意思是JustaBunchOfDisks,是将多块硬盘串联起来组成一个大的存储设备,从某种意义上说这种类型不被算作RAID,在维基百科里JBOD同时也被归入非RAID架构。RAIDJBOD将所有的磁盘串联成一个单一的,容量是使用的磁盘的总和的存储设备供操作系统使用。比如使用3块容量是80GB的磁盘,建立的RAIDJBOD设备的容量就是240GB,再比如使用3块容量分别是60GB,80GB,100GB的磁盘,建立的RAIDJBOD设备容量是240GB,这里要注意的是RAIDJBOD可以使用成员设备中的所有空间,无论各设备尺寸是否相同。这一点也是RAIDJBOD与其他RAID类型的最大不同。因为是各设备串联,RAIDJBOD的访问速度跟单个设备相同,也没有任何形式的校验,因此任意一块磁盘出现故障,都会破坏整个RAID,可靠性是单一设备的1/N。RAID0RAID0将N块硬盘上选择合理的带区来创建带区集。其原理是将类似于显示器隔行扫描,将数据分割成不同条带(Stripe)分散写入到所有的硬盘中同时进行读写。多块硬盘的并行操作使同一时间内磁盘读写的速度提升N倍。在创建带区集时,合理的选择带区的大小非常重要。如果带区过大,可能一块磁盘上的带区空间就可以满足大部分的I/O操作,使数据的读写仍然只局限在少数的一、两块硬盘上,不能充分的发挥出并行操作的优势。另一方面,如果带区过小,任何I/O指令都可能引发大量的读写操作,占用过多的控制器总线带宽。因此,在创建带区集时,我们应当根据实际应用的需要,慎重地选择带区的大小。带区集虽然可以把数据均匀的分配到所有的磁盘上进行读写。但如果我们把所有的硬盘都连接到一个控制器上的话,可能会带来潜在的危害。这是因为当我们频繁进行读写操作时,很容易使控制器或总线的负荷超载。为了避免出现上述问题,建议用户可以使用多个磁盘控制器。最好解决方法还是为每一块硬盘都配备一个专门的磁盘控制器。虽然RAID0可以提供更多的空间和更好的性能,但是整个系统是非常不可靠的,如果出现故障,无法进行任何补救。所以,RAID0一般只是在那些对数据安全性要求不高的情况下才被人们使用。RAID1RAID1称为磁盘镜像,原理是把一个磁盘的数据镜像到另一个磁盘上,也就是说数据在写入一块磁盘的同时,会在另一块闲置的磁盘上生成镜像文件,在不影响性能情况下最大限度的保证系统的可靠性和可修复性上,只要系统中任何一对镜像盘中至少有一块磁盘可以使用,甚至可以在一半数量的硬盘出现问题时系统都可以正常运行,当一块硬盘失效时,系统会忽略该硬盘,转而使用剩余的镜像盘读写数据,具备很好的磁盘冗余能力。虽然这样对数据来讲绝对安全,但是成本也会明显增加,磁盘利用率为50%,以四块80GB容量的硬盘来讲,可利用的磁盘空间仅为160GB。另外,出现硬盘故障的RAID系统不再可靠,应当及时的更换损坏的硬盘,否则剩余的镜像盘也出现问题,那么整个系统就会崩溃。更换新盘后原有数据会需要很长时间同步镜像,外界对数据的访问不会受到影响,只是这时整个系统的性能有所下降。因此,RAID1多用在保存关键性的重要数据的场合。RAID1主要是通过二次读写实现磁盘镜像,所以磁盘控制器的负载也相当大,尤其是在需要频繁写入数据的环境中。为了避免出现性能瓶颈,使用多个磁盘控制器就显得很有必要。从RAID0+1名称上我们便可以看出是RAID0与RAID1的结合体。在我们单独使用RAID1也会出现类似单独使用RAID0那样的问题,即在同一时间内只能向一块磁盘写入数据,不能充分利用所有的资源。为了解决这一问题,我们可以在磁盘镜像中建立带区集。因为这种配置方式综合了带区集和镜像的优势,所以被称为RAID0+1。把RAID0和RAID1技术结合起来,数据除分布在多个盘上外,每个盘都有其物理镜像盘,提供全冗余能力,允许一个以下磁盘故障,而不影响数据可用性,并具有快速读/写能力。RAID0+1要在磁盘镜像中建立带区集至少4个硬盘。RAID2从概念上讲,RAID2同RAID3类似,两者都是将数据条块化分布于不同的硬盘上,条块单位为位或字节。然而RAID2使用一定的编码技术来提供错误检查及恢复。这种编码技术需要多个磁盘存放检查及恢复信息,使得RAID2技术实施更复杂。因此,在商业环境中很少使用。下图左边的各个磁盘上是数据的各个位,由一个数据不同的位运算得到的海明校验码可以保存另一组磁盘上。由于海明码的特点,它可以在数据发生错误的情况下将错误校正,以保证输出的正确。它的数据传送速率相当高,如果希望达到比较理想的速度,那最好提高保存校验码ECC码的硬盘,对于控制器的设计来说,它又比RAID3,4或5要简单。没有免费的午餐,这里也一样,要利用海明码,必须要付出数据冗余的代价。输出数据的速率与驱动器组中速度最慢的相等。RAID3RAID3(带奇偶校验码的并行传送)。这种校验码与RAID2不同,只能查错不能纠错。它访问数据时一次处理一个带区,这样可以提高读取和写入速度。校验码在写入数据时产生并保存在另一个磁盘上。需要实现时用户必须要有三个以上的驱动器,写入速率与读出速率都很高,因为校验位比较少,因此计算时间相对而言比较少。用软件实现RAID控制将是十分困难的,控制器的实现也不是很容易。它主要用于图形(包括动画)等要求吞吐率比较高的场合。不同于RAID2,RAID3使用单块磁盘存放奇偶校验信息。如果一块磁盘失效,奇偶盘及其他数据盘可以重新产生数据。如果奇偶盘失效,则不影响数据使用。RAID3对于大量的连续数据可提供很好的传输率,但对于随机数据,奇偶盘会成为写操作的瓶颈。RAID4RAID4(带奇偶校验码的独立磁盘结构)。RAID4和RAID3很象,不同的是,它对数据的访问是按数据块进行的,也就是按磁盘进行的,每次是一个盘。在图上可以这么看,RAID3是一次一横条,而RAID4一次一竖条。它的特点和RAID3也挺象,不过在失败恢复时,它的难度可要比RAID3大得多了,控制器的设计难度也要大许多,而且访问数据的效率不怎么好。RAID5RAID5(分布式奇偶校验的独立磁盘结构)。从它的示意图上可以看到,它的奇偶校验码存在于所有磁盘上,其中的p0代表第0带区的奇偶校验值,其它的意思也相同。RAID5的读出效率很高,写入效率一般,块式的集体访问效率不错。因为奇偶校验码在不同的磁盘上,所以提高了可靠性。但是它对数据传输的并行性解决不好,而且控制器的设计也相当困难。RAID3与RAID5相比,重要的区别在于RAID3每进行一次数据传输,需涉及到所有的阵列盘。而对于RAID5来说,大部分数据传输只对一块磁盘操作,可进行并行操作。在RAID5中有“写损失”,即每一次写操作,将产生四个实际的读/写操作,其中两次读旧的数据及奇偶信息,两次写新的数据及奇偶信息。RAID6RAID6是带两种分布存储的奇偶校验码独立磁盘结构。它是对RAID5的扩展,主要是用于要求数据绝对不能出错的场合。当然了,由于引入了第二种奇偶校验值,所以需要N+2个磁盘,同时对控制器的设计变得十分复杂,写入速度也不好,用于计算奇偶校验值和验证数据正确性所花费的时间比较多,造成了不必须的负载。我想除了军队没有人用得起这种东西。RAID7RAID7(优化的高速数据传送磁盘结构)。RAID7所有的I/O传送均是同步进行的,可以分别控制,这样提高了系统的并行性,提高系统访问数据的速度;每个磁盘都带有高速缓冲存储器,实时操作系统可以使用任何实时操作芯片,达到不同实时系统的需要。允许使用SNMP协议进行管理和监视,可以对校验区指定独立的传送信道以提高效率。可以连接多台主机,因为加入高速缓冲存储器,当多用户访问系统时,访问时间几乎接近于0。由于采用并行结构,因此数据访问效率大大提高。需要注意的是它引入了一个高速缓冲存储器,这有利有弊,因为一旦系统断电,在高速缓冲存储器内的数据就会全部丢失,因此需要和UPS一起工作。当然了,这么快的东西,价格也非常昂贵。RAID10RAID10(高可靠性与高效磁盘结构)。这种结构无非是一个带区结构加一个镜象结构,因为两种结构各有优缺点,因此可以相互补充,达到既高效又高速的目的。大家可以结合两种结构的优点和缺点来理解这种新结构。这种新结构的价格高,可扩充性不好。主要用于数据容量不大,但要求速度和差错控制的数据库中。RAID53RAID53(高效数据传送磁盘结构)。越到后面的结构就是对前面结构的一种重复和再利用,这种结构就是RAID3和带区结构的统一,因此它速度比较快,也有容错功能。但价格十分高,不易于实现。这是因为所有的数据必须经过带区和按位存储两种方法,在考虑到效率的情况下,要求这些磁盘同步真是不容易。RAID5ERAID5E是在RAID5级别基础上的改进,与RAID5类似,数据的校验信息均匀分布在各硬盘上,但是,在每个硬盘上都保留了一部分未使用的空间,这部分空间没有进行条带化,最多允许两块物理硬盘出现故障。看起来,RAID5E和RAID5加一块热备盘好像差不多,其实由于RAID5E是把数据分布在所有的硬盘上,性能会比RAID5加一块热备盘要好。当一块硬盘出现故障时,有故障硬盘上的数据会被压缩到其它硬盘上未使用的空间,逻辑盘保持RAID5级别。RAID5EE与RAID5E相比,RAID5EE的数据分布更有效率,每个硬盘的一部分空间被用作分布的热备盘,它们是阵列的一部分,当阵列中一个物理硬盘出现故障时,数据重建的速度会更快。RAID技术的应用编辑1、DAS--directaccessstoragedevice直接访问存储设备DAS以服务器为中心,传统的网络存储设备都是将RAID硬盘阵列直接连接到网络系统的服务器上,这种形式的网络存储结构称为DAS(DirectAttachedStorage)。2、NAS--NetworkAttachedStorage网络附加存储设备NAS以数据为中心,NAS是NetworkAttachedStorage的简称,中文称为直接联网存储在NAS存储结构中,存储系统不再通过I/O总线附属于某个特定的服务器或客户机,而是直接通过网络接口与网络直接相连,由用户通过网络访问。3、SAN--StorageAreaNetworks存储区域网SAN以网络为中心,SAN是一种类似于普通局域网的高速存储网络。SAN提供了一种与现有LAN连接的简易方法,允许企业独立地增加它们的存储容量,并使网络性能不至于受到数据访问的影响。这种独立的专有网络存储方式使得SAN具有不少优势:可扩展性高;存储硬件功能的发挥不受LAN的影响;易管理;集中式管理软件使得远程管理和无人值守得以实现;容错能力强。SAN主要用于存储量大的工作环境,如医院大型PACS等,但现在由于需求量不大成本高而影响了SAN的市场。
排行榜
UGREEN 绿联 30786 2.5/3.5英寸 双盘位 SATA硬盘盒 USB3.1 Type-C
496.01元包邮(双重优惠)
迷虎 多双盘位阵列硬盘盒 RAID磁盘阵列柜 外接3.5寸sata硬盘盒子
137元
西部数据 WD_BLACK SN850X NVMe SSD 游戏内存 带散热器 8TB大容量 PCIe4.0
4431.09元
Singstor鑫云SS100D-08A磁盘阵列柜 4K视频剪辑高速存储 DAS硬盘盒盘阵
13399元(需用券)
Singstor 鑫云 SS100D-08A磁盘阵列柜 4K视频剪辑高速存储 DAS硬盘盒盘阵
20899元
16T氦气MG08企业级硬盘16台式机网络存储设备磁盘硬盘监控16T机械
708元
UGREEN 绿联 双盘位磁盘阵列硬盘柜 Type-C3.1全铝阵列硬盘盒
599元
UGREEN 绿联 25288 磁盘阵列硬盘柜 多盘位硬盘盒
779元(需用券)
ACASIS 阿卡西斯 EC-7355 2.5/3.5英寸磁盘阵列硬盘柜
849元(需用券)
铁威马 D5-300 五盘位 RAID硬盘盒 USB3.0 Type-C
1299元
双盘位3.5英寸磁盘阵列盒,存储升级新选择!
烧坏的内存条 07-14 00:08
12 3
磁盘阵列科普,RAID到底是什么东西?
电脑叫兽 03-03 13:50
64 196
QNAP 威联通TR-004磁盘阵列外接盒使用教程
极客man 03-19 11:38
29 27