`
flychao88
  • 浏览: 753284 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

【转】RAID磁盘阵列学习

 
阅读更多

      RAID是“Redundant Array of Independent Disk”的缩写,中文意思是独立冗余磁盘阵列。简单地解释,就是将N台硬盘通过RAID Controller(分Hardware,Software)结合成虚拟单台大容量的硬盘使用。RAID的采用为存储系统(或者服务器的内置存储)带来巨大利益,其中提高传输速率和提供容错功能是最大的优点。

       简单的说,RAID是一种把多块独立的硬盘(物理硬盘)按不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和提供数据备份技术。根据磁盘陈列的不同组合方式,可以将RAID分为不同的级别。

       磁盘阵列中针对不同的应用使用的不同技术,称为RAID level,而每一level都代表着不同技术,目前业界公认的标准是RAID 0~RAID 5。这个level并不代表技术的高低,level 5并不高于level 3,level 1也不低过level 4,至于要选择那一种RAID level的产品,纯视用户的操作环境(operating environment)及应用(application)而定与level的高低没有必然的关系。

    在RAID有一基本概念称为EDAP(Extended Data Availability and Protection),其强调扩充性及容错机制,也是各家厂商如:Mylex,IBM,HP,Compaq,Adaptec,Infortrend等诉求的重点,包括在不须停机情况下可处理以下动作:

  • RAID 磁盘阵列支持自动检测故障硬盘
  • RAID 磁盘阵列支持重建硬盘坏轨的资料
  • RAID 磁盘阵列支持不须停机的硬盘备援Hot Spare
  • RAID 磁盘阵列支援支持不须停机的硬盘替换Hot Swap
  • RAID 磁盘阵列支持扩充硬盘容量等

    RAID 0:无差错控制的带区组

    

    

       要实现RAID0必须要有两个以上硬盘驱动器,RAID0实现了带区组,数据并不是保存在一个硬盘上,而是分成数据块保存在不同驱动器上。因为将数据分布在不同驱动器上,所以数据吞吐率大大提高,驱动器的负载也比较平衡。如果刚好所需要的数据在不同的驱动器上效率最好。它不需要计算校验码,实现容易。它的缺点是它没有数据差错控制,如果一个驱动器中的数据发生错误,即使其它盘上的数据正确也无济于事了。不应该将它用于对数据稳定性要求高的场合。如果用户进行图象(包括动画)编辑和其它要求传输比较大的场合使用RAID0比较合适。同时,RAID可以提高数据传输速率,比如所需读取的文件分布在两个硬盘上,这两个硬盘可以同时读取。那么原来读取同样文件的时间被缩短为1/2。在所有的级别中,RAID 0的速度是最快的。但是RAID 0没有冗余功能的,如果一个磁盘(物理)损坏,则所有的数据都无法使用。

    如果两块硬盘:160G+120G=240G

    RAID 1:镜象结构

    

    

       对于使用这种RAID1结构的设备来说,RAID控制器必须能够同时对两个盘进行读操作和对两个镜象盘进行写操作。通过下面的结构图您也可以看到必须有两个驱动器。因为是镜象结构在一组盘出现问题时,可以使用镜象,提高系统的容错能力。它比较容易设计和实现。每读一次盘只能读出一块数据,也就是说数据块传送速率与单独的盘的读取速率相同。因为RAID1的校验十分完备,因此对系统的处理能力有很大的影响,通常的RAID功能由软件实现,而这样的实现方法在服务器负载比较重的时候会大大影响服务器效率。当您的系统需要极高的可靠性时,如进行数据统计,那么使用RAID1比较合适。而且RAID1技术支持“热替换”,即不断电的情况下对故障磁盘进行更换,更换完毕只要从镜像盘上恢复数据即可。当主硬盘损坏时,镜像硬盘就可以代替主硬盘工作。镜像硬盘相当于一个备份盘,可想而知,这种硬盘模式的安全性是非常高的,RAID 1的数据安全性在所有的RAID级别上来说是最好的。但是其磁盘的利用率却只有50%,是所有RAID级别中最低的。

    如果两块硬盘:160G+120G=120G

    RAID2:带海明码校验

    

       从概念上讲,RAID 2 同RAID 3类似,两者都是将数据条块化分布于不同的硬盘上, 条块单位为位或字 节。然而RAID 2 使用一定的编码技术来提供错误检查及恢复。这种编码技术需要多个磁盘存放检查及恢复信息,使得RAID 2技术实施更复杂。因此,在商业环境中很少使用。上图右边的各个磁盘上是数据的各个位,由一个数据不同的位运算得到的海明校验码可以保存另一组磁盘上,具体情况请见下图。由于海明码的特点,它可以在数据发生错误的情况下将错误校正,以保证输出的正确。它的数据传送速率相当高,如果希望达到比较理想的速度,那最好提高保存校验码ECC码的硬盘,对于控制器的设计来说,它又比RAID3,4或5要简单。没有免费的午餐,这里也一样,要利用海明码,必须要付出数据冗余的代价。输出数据的速率与驱动器组中速度最慢的相等。

    RAID3:带奇偶校验码的并行传送

    

    

       RAID3这种校验码与RAID2不同,只能查错不能纠错。它访问数据时一次处理一个带区,这样可以提高读取和写入速度,它像RAID 0一样以并行的方式来存放数据,但速度没有RAID 0快。校验码在写入数据时产生并保存在另一个磁盘上。需要实现时用户必须要有三个以上的驱动器,写入速率与读出速率都很高,因为校验位比较少,因此计算时间相对而言比较少。用软件实现RAID控制将是十分困难的,控制器的实现也不是很容易。它主要用于图形(包括动画)等要求吞吐率比较高的场合。不同于RAID 2,RAID 3使用单块磁盘存放奇偶校验信息。如果一块磁盘失效,奇偶盘及其他数据盘可以重新产生数据。如果奇偶盘失效,则不影响数据使用。RAID 3对于大量的连续数据可提供很好的传输率,但对于随机数据,奇偶盘会成为写操作的瓶颈。利用单独的校验盘来保护数据虽然没有镜像的安全性高,但是硬盘利用率得到了很大的提高,为(n-1)/n。

    RAID4:带奇偶校验码的独立磁盘结构

    

    

       RAID4和RAID3很像,不同的是,它对数据的访问是按数据块进行的,也就是按磁盘进行的,每次是一个盘。在图上可以这么看,RAID3是一次一横条,而RAID4一次一竖条。它的特点和RAID3也挺像,不过在失败恢复时,它的难度可要比RAID3大得多了,控制器的设计难度也要大许多,而且访问数据的效率不怎么好。

    RAID5:分布式奇偶校验的独立磁盘结构

    

    

    

       从它的示意图上可以看到,它的奇偶校验码存在于所有磁盘上,其中的p0代表第0带区的奇偶校验值,其它的意思也相同。RAID5的读出效率很高,写入效率一般,块式的集体访问效率不错。因为奇偶校验码在不同的磁盘上,所以提高了可靠性,允许单个磁盘出错。RAID 5也是以数据的校验位来保证数据的安全,但它不是以单独硬盘来存放数据的校验位,而是将数据段的校验位交互存放于各个硬盘上。这样,任何一个硬盘损坏,都可以根据其它硬盘上的校验位来重建损坏的数据。硬盘的利用率为n-1。但是它对数据传输的并行性解决不好,而且控制器的设计也相当困难。RAID 3 与RAID 5相比,重要的区别在于RAID 3每进行一次数据传输,需涉及到所有的阵列盘。而对于RAID 5来说,大部分数据传输只对一块磁盘操作,可进行并行操作。在RAID 5中有“写损失”,即每一次写操作,将产生四个实际的读/写操作,其中两次读旧的数据及奇偶信息,两次写新的数据及奇偶信息。RAID-5的话,优点是提供了冗余性(支持一块盘掉线后仍然正常运行),磁盘空间利用率较高(N-1/N),读写速度较快(N-1倍)。RAID5最大的好处是在一块盘掉线的情况下,RAID照常工作,相对于RAID0必须每一块盘都正常才可以正常工作的状况容错性能好多了。因此RAID5是RAID级别中最常见的一个类型。RAID5校验位即P位是通过其它条带数据做异或(xor)求得的。计算公式为P=D0xorD1xorD2…xorDn,其中p代表校验块,Dn代表相应的数据块,xor是数学运算符号异或。

    RAID6:两种存储的奇偶校验码的磁盘结构

    

      名字很长,但是如果看到图,大家立刻会明白是为什么,请注意p0代表第0带区的奇偶校验值,而pA代表数据块A的奇偶校验值。它是对RAID5的扩展,主要是用于要求数据绝对不能出错的场合。当然了,由于引入了第二种奇偶校验值,所以需要N+2个磁盘,同时对控制器的设计变得十分复杂,写入速度也不好,用于计算奇偶校验值和验证数据正确性所花费的时间比较多,造成了不必须的负载。我想除了军队没有人用得起这种东西。

    RAID7:优化的高速数据传送磁盘结构

    

      RAID7所有的I/O传送均是同步进行的,可以分别控制,这样提高了系统的并行性,提高系统访问数据的速度;每个磁盘都带有高速缓冲存储器,实时操作系统可以使用任何实时操作芯片,达到不同实时系统的需要。允许使用SNMP协议进行管理和监视,可以对校验区指定独立的传送信道以提高效率。可以连接多台主机,因为加入高速缓冲存储器,当多用户访问系统时,访问时间几乎接近于0。由于采用并行结构,因此数据访问效率大大提高。需要注意的是它引入了一个高速缓冲存储器,这有利有弊,因为一旦系统断电,在高速缓冲存储器内的数据就会全部丢失,因此需要和UPS一起工作。当然了,这么快的东西,价格也非常昂贵。

     RAID10/01:高可靠性与高效磁盘结构

     这种结构无非是一个带区结构加一个镜象结构,因为两种结构各有优缺点,因此可以相互补充,达到既高效又高速还可以互为镜像的目的。大家可以结合两种结构的优点和缺点来理解这种新结构。这种新结构的价格高,可扩充性不好。主要用于容量不大,但要求速度和差错控制的数据库中。

    其中可分为两种组合:RAID10和RAID01

    

      RAID 10是先镜射再分区数据。是将所有硬盘分为两组,视为是RAID 0的最低组合,然后将这两组各自视为RAID 1运作。RAID 10有着不错的读取速度,而且拥有比RAID 0更高的数据保护性。

    

      RAID 01则是跟RAID 10的程序相反,是先分区再将数据镜射到两组硬盘。它将所有的硬盘分为两组,变成RAID 1的最低组合,而将两组硬盘各自视为RAID 0运作。RAID 01比起RAID 10有着更快的读写速度,不过也多了一些会让整个硬盘组停止运转的机率;因为只要同一组的硬盘全部损毁,RAID 01就会停止运作,而RAID 10则可以在牺牲RAID 0的优势下正常运作。

      RAID 10巧妙的利用了RAID 0的速度以及RAID 1的保护两种特性,不过它的缺点是需要的硬盘数较多,因为至少必须拥有四个以上的偶数硬盘才能使用。

      RAID 50:被称为分布奇偶位阵列条带

    

      同RAID 10相仿的,它具有RAID 5和RAID 0的共同特性。它由两组RAID 5磁盘组成(每组最少3个),每一组都使用了分布式奇偶位,而两组硬盘再组建成RAID 0,实验跨磁盘抽取数据。RAID 50提供可靠的数据存储和优秀的整体性能,并支持更大的卷尺寸。即使两个物理磁盘发生故障(每个阵列中一个),数据也可以顺利恢复过来。

      RAID 50最少需要6个驱动器,它最适合需要高可靠性存储、高读取速度、高数据传输性能的应用。这些应用包括事务处理和有许多用户存取小文件的办公应用程序。

      RAID 53:称为高效数据传送磁盘结构

      结构的实施同Level 0数据条阵列,其中,每一段都是一个RAID 3阵列。它的冗余与容错能力同RAID 3。这对需要具有高数据传输率的RAID 3配置的系统有益,但是它价格昂贵、效率偏低。

      RAID 1.5:一个新生的磁盘阵列方式

      它具有RAID 0+1的特性,而不同的是,它的实现只需要2个硬盘。从表面上来看,组建RAID 1.5后的磁盘,两个都具有相同的数据。当然,RAID 1.5也是一种不能完全利用磁盘空间的磁盘阵列模式,因此,两个80GB的硬盘在组建RAID 1.5后,和RAID 1是一样的,即只有80GB的实际使用空间,另外80GB是它的备份数据。如果把两个硬盘分开,分别把他们运行在原系统,也是畅通无阻的。但通过实际应用,我们发现如果两个硬盘在分开运行后,其数据的轻微改变都会引起再次重组后的磁盘阵列,没法实现完全的数据恢复,而是以数据较少的磁盘为准。

      JBOD

    

      严格的说,JBOD并不属于RAID的范畴,只是将多个磁盘空间合并成一个大的逻辑磁盘,不具有错误冗余机制。资料的存放机制是由第一颗磁盘开始依序往后存放,即操作系统看到的是一个大磁盘(由许多小磁盘组成)。但如果磁盘损毁,则该颗硬盘上的所有资料将无法救回。若第一颗硬盘损坏,通常无法作救援(因大部分档案系统将档案表存在磁盘前端,即第一颗),失去档案表即失去一切资料。

      如果两块硬盘:160G+120G=280G

      在实际的应用中,RAID2~4并不存在,因为RAID5已经涵盖了所需的功能。因此RAID2~4目前只有在研究领域有实作,而在实际应用上则以RAID 0、1、0+1、5或RAID6为主。但是对于我们普通用户来说,用的最多的也就是RAID 0、1、0+1和RAID 5。

分享到:
评论

相关推荐

    新手学习RAID磁盘阵列模拟器

    使用RAID磁盘阵列模拟器,可以在不实际操作硬件的情况下学习和实践这些过程。模拟器提供了虚拟环境,可以模拟不同RAID级别的创建、故障恢复等场景。通过模拟器,你可以安全地试验各种配置,理解它们的工作原理和优...

    RAID磁盘阵列模拟器

    在实际操作中,RAID磁盘阵列模拟器是一个非常实用的工具,它允许用户在不实际部署硬件的情况下理解和学习RAID的工作原理。 RAID技术主要有以下几种级别: 1. **RAID 0**:条带化(Striping)。它将数据分散到多个...

    RAID磁盘阵列高级教学课件

    总之,通过学习“RAID磁盘阵列高级教学课件”,你将能够深入了解RAID技术的核心原理,掌握如何根据业务需求选择和配置适当的RAID级别,以及如何管理和维护RAID系统,以确保数据的安全性和系统的稳定性。

    RAID与磁盘阵列技术资料

    RAID(Redundant Array of Independent Disks,独立冗余磁盘阵列)是一种通过将多个硬盘组合起来形成一个逻辑单元来提高数据存储性能、可靠性和容量的技术。磁盘阵列是实现RAID的核心概念,它允许用户在不增加单个...

    强!用VMware虚拟机创建raid0、5、1磁盘阵列的过程

    用VMware虚拟机创建RAID 0、5、1磁盘阵列的过程 #### 一、概述 本文旨在详细介绍如何在VMware虚拟机环境中构建RAID 0、RAID 5以及RAID 1磁盘阵列。对于初学者来说,通过虚拟机环境搭建RAID不仅可以节省成本,还能...

    全程图解+手把手教你做RAID磁盘阵列

    本文将通过实例介绍如何配置RAID磁盘阵列,并探讨不同类型的RAID技术。 首先,RAID的实现方式分为软件阵列和硬件阵列。软件阵列依赖于操作系统,如Windows NT/2000 Server/Server 2003和NetWare,它们提供RAID 0、...

    用虚拟机来创建raid0、5、1磁盘阵列的过程

    总之,虚拟机提供了一个理想的学习和测试平台,允许用户在没有风险的环境中练习安装和维护RAID阵列,对于IT管理员和工程师来说,这是一个非常宝贵的学习资源。而在实际部署RAID技术时,则需要考虑到硬件兼容性、成本...

    服务器RAID磁盘阵列的恢复.pptx

    【服务器RAID磁盘阵列恢复知识详解】 服务器RAID磁盘阵列的恢复是一个复杂且关键的过程,尤其当涉及到企业的重要数据时。本篇主要介绍了一次针对IBM服务器RAID5阵列恢复的任务,该阵列由三块SAS接口硬盘构成,因两...

    RAID磁盘阵列安装

    总结,RAID磁盘阵列是一种有效的存储解决方案,它提供了性能提升和数据安全性。理解不同RAID级别的特点,以及如何在实际或虚拟环境中安装RAID,对于任何IT专业人员来说都至关重要。通过实践和学习,你可以更好地利用...

    H3C的存储资料(RAID,磁盘阵列)

    本压缩包文件聚焦于H3C的存储知识,特别是RAID(冗余磁盘阵列)技术和磁盘阵列的配置与管理。以下是基于这些主题的详细知识解析: 1. **RAID(冗余磁盘阵列)**:RAID是一种通过将数据分布在多个硬盘上来提高性能和...

    全程图解:手把手教你做RAID磁盘阵列

    RAID(Redundant Array of Independent Disks,独立冗余磁盘阵列)是一种通过将多个硬盘组合起来,实现数据存储性能提升、容错或两者...通过实践和学习,您可以轻松掌握RAID磁盘阵列的建立和管理,提升您的IT专业素养。

    DELL服务器RAID磁盘阵列配置图解.doc编程资料

    DELL服务器RAID磁盘阵列配置图解.doc

    磁盘阵列raid_模拟器

    本软件“磁盘阵列RAID模拟器”是专为那些想要学习和实践RAID技术但缺乏实际硬件设备的人设计的。这个模拟器提供了与真实服务器上配置RAID相同的功能和体验,让用户可以在虚拟环境中进行各种RAID级别的创建、管理和...

    超详细的磁盘阵列图文教程

    磁盘阵列是一种数据存储技术,它通过将多个物理硬盘组合在一起,形成一个逻辑单元,以提高存储性能、数据安全...通过"磁盘阵列(Disk Array).html"和"radio.files"这两个文件,你可以深入学习和实践磁盘阵列的相关知识。

    raid模拟器,练习磁盘阵列

    RAID(Redundant Array of Independent Disks,独立冗余磁盘阵列)是一种通过将多个硬盘组合起来,实现数据冗余和性能提升的技术。它广泛应用于服务器和存储系统中,提供更高的数据安全性与访问效率。RAID模拟器是...

    RAID阵列模拟器 适用大多服务器

    RAID(Redundant Array of Independent Disks,独立磁盘冗余阵列)是一种通过将多个硬盘组合起来,实现数据冗余、性能提升或两者兼有的技术。在服务器环境中,RAID是至关重要的,因为它可以提供更高的数据可用性和...

Global site tag (gtag.js) - Google Analytics