分享

灾难应对完全手册:漫谈RAID的前世今生_存储子站_RAID_TechTarget IT专家网

 风雪雷电 2006-04-03

  独立磁盘冗余阵列(RAID——Redundant Arrays of Independent Disks)是一种使用多硬盘驱动器来存储数据的数据存储系统。可以使用多种不同的存储技术来实现不同等级的冗余、错误恢复和性能。

  过去,高可用计算机的安装都要求有足够的数据冗余,即一套复杂的数据镜像备份在出现问题时可以马上替代当前的数据。随着数据量的不断增长,这种解决方案的花费令人难以接受,于是,IT开发人员用RAID(独立磁盘冗余阵列)来解决这一问题。不像磁盘镜像,一个RAID系统并不一定要具备两倍于数据量的磁盘空间,如一个RAID 5系统为了保证数据的使用和安全可以只增加数据量20%的磁盘空间。

磁盘阵列分类

  根据磁盘阵列的结构、要求及数据处理特点,一般分为六个级别(也叫标准),即RAID 0、1、2、3、4、5,若另加一个派生的RAID 0+1,实际上有七个。其中RAID 2、3、4已基本淘汰,而RAID 5虽然最完备,但因至少由3块硬盘组成使其价格较高,往往应用于高中端网络数据库存储系统,RAID 0、1、0+1三种标准则主要应用于低中端网络数据库存储系统之中。

  根据磁盘阵列的数据接口,一般可以分为SCSI接口、IDE接口、光纤通道三类。虽然它们只是接口不同,但却可直接影响到磁盘阵列数据传输速度的快慢、数据存储备份容量的大小、设备成本与价格的高低、设备安装与维护的难度等,因而它们各有优劣,各自适应不同的应用环境,可满足不同用户的应用要求,所以磁盘阵列按接口分类广泛为人们所接受。磁盘阵列一般都能够在支持多个SCSI接口或光纤通道接口的同时,还可支持多台主机连接,从而可形成群集环境的高可用性架构和多主机共用网络存储数据系统。在高档SCSI接口的磁盘阵列中,还普遍支持32位RISC专用CPU,配置4~256MB高速缓存,使之能与主机并行运作,完全不需要任何软件或驱动程序支持,极大地提高了磁盘阵列的数据处理速度。
 
 传统的RAID都配有专用处理器、大容量缓存以及高速SCSI硬盘为其阵列基础,基本上都支持RAID 0、1、5等工业标准,并具有热插拔冗余控制器的相互备援,支持全自动的故障切换,可为内存镜像提供无单点错误能力等。这种磁盘阵列技术成熟、性能稳定、数据安全、存储可靠,同时存取速度快、存储容量大,但价格十分昂贵,且安装、维护和管理较复杂,是大中型网络数据存储系统的首选产品;基于IDE接口的磁盘阵列IDE RAID,由于采用普通IDE接口硬盘,没有专用处理器和内存,在通过自带的BIOS调用下,可以利用主机CPU来实现RAID运算,因而结构简单、兼容性好、安装维护管理方便,其最大优点则是价格便宜(不仅省去了处理器和高速缓存,而且一块9G的SCSI硬盘在3千元左右,而一块9G的IDE硬盘只有1千元左右),是中小型企业网络存储设备的重要选择内容。IDE RAID也基本上支持RAID 0、1、0+1标准,某些还支持RAID 5标准,普遍采用支持UDMA/66高速接口的普通硬盘作为阵列存储单元。其中多条独立数据通道在提高阵列性能的同时,能够增强数据的可靠性和数据的保护能力。另外,IDE RAID还普遍具有数据冗余功能,有的还可作为系统盘。光纤通道接口磁盘阵列是一种采用最新技术的高数据传输率和高带宽磁盘阵列,其最大特点是通道带宽高达100/200MB(SCSI只有80到160MB,IDE仅有33到66MB)。

  被称为第二代磁盘阵列系统的RD20,因其采用了新型体系结构,具有高可用性、高性能和大数据量存储处理能力,具有灵活的计算能力和低廉的价格特点。RD20采用了先进的冗余设计技术与软件,有效地保证了数据的最大可用性。其冗余体系结构及标准组件设计使其具有很强的灵活性,主机接口设计为独立的可添加的夹层卡,用户可自由选择异端或单端宽Ultra SCSI接口,大大方便了用户的自行设计外形结构和升级。单槽或双槽1.0625Gbps光纤接口,还允许用户直接与有光纤接口的主机、光纤交换机、网络集线器或其他冗余设备直接连接。RD20一般采用两个控制器,由RAID子系统进行双重控制,并由装在控制器中的温度传感器随时报告各扇区物理环境的异常现象,从而保证了系统的安全运行。

  RD20的主要特点是,采用了处理频率为133MHz的嵌入式RISC处理器,有多个用于控制硬盘驱动器和主机接口的PCI智能I/O处理器,内部PCI总线可提供132Mbps的数据传输带宽,主要用于连接后端硬盘驱动器的四个独立旋转式Ultra SCSI通道,大大提高了数据传输速率,其动态随机存储能力高达256MB,可双倍提高内存的读取速度。
 

 

RAID标准的意义

  基于RAID标准的磁盘阵列,之所以具有性能可靠和容量极大的技术优势,其主要原因是由于:首先,RAID控制器通过并行数据读写克服了磁盘机电设计的限制,可大大提高存取速度。RAID可以同时操作多张磁盘的读写,如四张磁盘组成的阵列的读写速度几乎是单张磁盘的四倍。所以,RAID的高速读写能力既可用来完成象高速的实时图像编辑,也可用于大量数据的高速存储备份;其次,RAID系统提供了大容量的数据存储,而且多张磁盘上的数据对于主机来说是随时可用的。复杂的RAID系统甚至允许用户通过控制器所发出的数据途径来组成多盘菊链,使得高性能的RAID控制器可同时进行多达90多张盘片的寻址操作;最后,RAID系统运用了奇偶校验技术,极大地提高了数据的可靠性。因为当RAID控制器在磁盘上写数据时,RAID系统会记录相应的奇偶位冗余数据,若该磁盘失效,该奇偶信息可使RAID控制器在不降低性能的情况下,重新计算丢失的信息。下面我们来总结一下RAID标准的意义。

  标准RAID:如前所述,传统RAID标准一般分为七级,其区别主要是阵列中的磁盘数与数据写入磁盘方式不同,但广泛应用的标准只有RAID 0、1、5和0+1四种,下面我们就来介绍这四种标准的意义。

  符合RAID 0标准磁盘阵列的基本特点是数据传输率高和安全性低。由于该标准阵列只能操作两块硬盘,并采用了将数据流分割成大小相同的数据条块(条块标准:容量一般为64KB,也可以调整为8KB或256KB),然后平均分配给两块硬盘,同时完成数据传输,其数据传输率基本上为两块硬盘传输率之和。虽然这种采用条块化存储数据的方法的传输数据率最快,效率最高,但因没有冗余,是以牺牲RAID的安全性为代价换到的极限性能,因此数据存储可靠性脆弱,一旦阵列中某块硬盘出现故障,整个系统也将随之瘫痪。
 
       符合RAID 1标准磁盘阵列的基本标准是数据传输率低和安全性高,恰好与RAID 0标准相反。符合该标准的磁盘阵列也只能操作两块硬盘,由于它使用了磁盘镜像,提供了冗余容错机制,使得阵列在每次写或更换数据时,同样的操作可发生在另一张磁盘上,即每次操作都能把写往主盘的数据同步地写到镜像盘上,一旦某磁盘失效另一张磁盘将马上接手工作。

  但这种工作方式使得镜像和冗余的成本较高,将浪费一半的磁盘空间,而且也影响了阵列的数据读写速度。虽然RAID 1还可以在读取数据时,保证同步在两个磁盘上搜索,并且能把先找到的数据传输回来,从而可改善阵列系统的调用效率,但因消耗主机CPU资源,几乎没有提高阵列系统的整体性能。所以RAID 1阵列只对紧要任务数据存储才有意义。

  符合RAID 0+1标准的磁盘阵列,实际上已考虑了上述两类标准的因素,吸收了上述两种标准的优点,即在RAID 0标准上把写往两个硬盘的数据同时做两个镜像,既保证了数据传输的高速率,又保证了系统数据的高安全性,但需提供4块硬盘,所以成本也要大大高出前两者。

  符合RAID 3标准的磁盘阵列包括数据分割,另外,它还指定一个驱动器来存储奇偶信息。这就提供了某种容错功能,在数据密集型环境或单一用户环境中尤其有益于访问较长的连续记录。RAID 3需要同步主轴驱动器来预防较短记录的性能下降。

  符合RAID 5标准的磁盘阵列,采用了奇偶校验和并行传送技术,虽然没有使用专用驱动器,但将校验位按要求写到了阵列中的某一台驱动器上,将数据和奇偶信息分布在阵列中的全部磁盘上,同样也避免了专用奇偶磁盘的需要。RAID 5标准的读写操作可同时进行,并使用了Exclusive-OR算法来计算奇偶信息。
 
      在RAID 5分布式奇偶校验块的例子中,磁盘3中的奇偶校验块是磁盘1、2、4和5上的数据的备份数据映像;磁盘2中的奇偶校验块是磁盘1、3、4和5上的数据的备份数据映像;磁盘1中的奇偶校验块是磁盘2、3、4和5上的数据的备份数据映像……依此类推。如果一块磁盘出现问题,控制器可以利用奇偶校验块来重建数据。

  奇偶校验块可以降低RAID 3和5数据存储的开销。例如RAID 5用一块磁盘来为4块磁盘提供数据冗余,那就意味着用5块磁盘来存储4块磁盘容量的数据并为那些数据提供完全备份

  软硬件RAID:RAID还有基于软件的RAID和基于硬件的RAID,两者在性能方面有较大区别,且能在不同领域各领风骚。其中,基于软件的RAID只能利用主机CPU和存储器来实现磁盘阵列的存储备份,根据操作系统又可分为基于Novell平台、Windows NT平台和Unix平台的软件RAID,软件RAID存储备份级别较低,由于高速缓冲存储器可以使得简单的分段和镜像完成得更快,可大大提高读写速度,因而任务较少时有明显优势。尤其是各类新版操作系统、容错软件和群集技术的普遍应用,又使得软件RAID在性能和功能方面到了充分的发挥。

  基于硬件的RAID因为拥有自己独立的CPU和存储器,完全可以自己计算奇偶信息并完成文件定位,提高数据并行传输速度。硬件RAID又可分为内置插卡式和外置机柜式RAID,内置插卡式RAID也依赖主机的操作系统,要求有专门的驱动器连接和设置RAID控制器,其优势在于速度,因为内置式系统无需通过SCSI适配器,当然内置式价格便宜,但内置式系统大部分没有扩充插件板,容量大小固定不变。另外,因在一个时间段内只有一台主机可和内置系统通信,很难进行双机容错备份;外置机柜式RAID可以独立计算,不仅可以灵活地增加驱动器,提高RAID存储备份容量,还能简单地实现双机容错热备份。所以,内置式RAID系统主要应用于PC服务器或成为其选件,或成为其标准配置,外置式RAID系统则主要用于双机容错系统中的大容量高可靠系统中。
 
新标准RAID 7:还有一种磁盘阵列新标准RAID 7。其实,RAID 7不仅仅是一种技术,还是一种存储计算机(Storage Computer)。因为它与RAID 0、1、5标准有明显区别,RAID 7自身带有智能化实时操作系统和用于存储管理的软件工具,可完全独立于主机运行,不占用主机CPU资源。RAID 7不仅具有更高的性能和卓越的存储管理能力,而且集普通RAID标准的所有优点于一身,因而RAID 7系统整体性能极佳。

  RAID 7存储计算机操作系统(Storage Computer Operating System)是一套实时事件驱动操作系统,主要用来进行系统初始化和安排RAID 7磁盘阵列的所有数据传输,并把它们转换到相应的物理存储驱动器上。通过自身系统中的阵列电脑板来设定和控制读写速度,存储计算机操作系统可使主机I/O传递性能达到最佳。如果一个磁盘出现故障,还可自动执行恢复操作,并可管理备份磁盘的重建过程。

  RAID 7突破了以往RAID标准的技术架构,采用了非同步访问,极大地减轻了数据写瓶颈,提高了I/O速度。所谓非同步访问,即RAID 7的每个I/O界面都有一条专用的高速通道,作为数据或控制信息的流通路径,因此可独立地控制自身系统中每个磁盘的数据存取。如果RAID 7有N个磁盘,那么除去一个校验盘(用作冗余计算)外,可同时处理N-1个主机系统随机发出的读/写指令,从而显著地改善了I/O应用。RAID 7系统内置实时操作系统还可自动对主机发送过来的读/写指令进行优化处理,以智能化方式将可能被读取的数据预先读入快速缓存中,从而大大减少了磁头的转动次数,提高了I/O速度。RAID 7可帮助用户有效地管理日益庞大的数据存储系统,并使系统的运行效率提高至少一倍以上,满足了各类用户的不同需求。
 
 

 

选购RAID小技巧

  市场上的RAID产品丰富多彩,每个产品又含有一大堆的技术指标,令用户眼花缭乱。那么用户在选购RAID的时候应该考虑哪些因素呢?

  首先,最重要的就是要搞清楚用RAID来做什么,也就是从应用角度出发来选择。因为RAID有很多标准,每种标准有不同的特长,所对应的应用也不同。如果用户要求快速地存取数据,而对可靠性没有过高要求,可以选择RIAD 0标准的产品。如前所述,RAID 0的数据传输率高,而安全性低。

  RAID 1标准磁盘阵列的基本标准是数据传输率低和安全性高,正好与RAID 0相反,因此如果用户对速度没有需求,而要求可靠性的话,RAID 1是最好的选择。但是RAID的花费很高。

  那么有没有一种产品速度又快、可靠性高呢?RAID 0和1的完美结合将这两种优点集成在一起,但是成本也不比RAID 1低。因为RAID 0/1的这种配置要求至少4块磁盘。数据块1写到磁盘1,数据镜像写到磁盘2;数据块2写到磁盘3,数据镜像写到磁盘4;数据块3写到磁盘1,数据镜像写到磁盘2……依此类推。因为数据被分割后存储在多个磁盘上,所以RAID 0/1既有RAID 0速度快的优点,又有RAID 1高可用性的优点。但是RAID 0/1也和RAID 1一样要求一组完全备份磁盘。所以也不能称之为经济高效的方案。

对于管理数据库操作和关键型业务的用户,其数据库的查询活动频繁,但数据量不大,RAID 5 的存储结构非常适合于电子邮件、电子表格和数据库应用等数据传输和事务处理。RAID 5阵列读磁盘的速度较快、数据可靠性高,有效容量达到66%~87%之间,因此性价比较高,是现在应用最广泛的磁盘阵列。而RAID 3较适合于视频系统。

  互联网上的数据传输安全问题一直是用户所担心的,新标准RAID 7可保证数据传输的安全性,防止数据丢失。

  除了考虑这些标准外,软硬件RAID也关系到成本和性能问题。硬RAID,速度快,但价格高;软件RAID便宜,但速度慢,主要应用于基于IDE接口的中低档磁盘阵列中。

  第二,RAID的冗余性、可靠性和可维护性也是需要考虑的因素。

  冗余性主要表现在RAID控制器、电源、风扇、磁盘的冗余性。如RAID控制器冗余就有两种方式,一种是一个控制器做备份,另一个工作,当工作控制器出故障后,备份控制器会接替其工作;另一种是两个控制器都是工作控制器,同时工作,当一个出故障,另一个会继续工作,只是带宽也会减半。

  可靠性主要表现在电源、风扇、磁盘等是否能够热插拔。它们的这些性能体现在数据的可靠性方面。可维护性即是否有单点故障出现等。

  此外,用户还应根据自己的需求选择是SCSI接口还是光纤通道接口的RAID,这些都对性能和价格有很大的影响。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多