GZICP.com   
 
    返回首页
    联系我们
 
 
     

以RAID抗衡灾难

www.gzicp.com   2004年7月5日 00:11:44
 

  独立磁盘冗余阵列(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,这些都对性能和价格有很大的影响。

产品篇

Compaq

  Compaq StorageWorks RAID Array 4100凭借其存储可伸缩性、存储虚拟化和高可用性,并通过一套简化管理系统集成于整个企业内,可很好地应用于康柏企业网络存储体系结构(ENSA)。

  RAID Array 4100是第一款支持Ultra2通用硬盘的光纤通道存储系统。Ultra2通用硬盘避免了决定在哪些服务器上部署哪些硬盘的烦恼,并省却了昂贵的备件库存开支。因此,无需停机即可轻松地更换驱动器。

  基于100MB/s光纤通道的体系结构消除了整个系统的瓶颈,因此无需牺牲任何性能即可增加存储容量。拥有StorageWorks虚拟复制器,可以动态扩充容量,而无须停机。

  RAID Array 4100系统采用易于安装的"构建模块"方式进行设计。它具有64MB阵列加速(ECC保护)电池后备读/写高速缓存;支持的驱动器多达12个1英寸的热插拔Ultra2通用驱动器;数据保护采取RAID 0、1、4和5,具有自动数据恢复功能和一个在线备份;采用热插拔冗余电源和冗余风扇、热插拔硬盘和在线扩容。支持MSCS(Microsoft Cluster Server)、Novell Clustered Server(NCS)和Novell High Availability Server(NHAS);具备两个热插拔350W电源 。

HP

  为了解决RAID使用所面临的问题,HP的工程师开发出了HP AutoRAID,它是综合了不同RAID优点的多级RAID阵列。HP AutoRAID将最近使用的数据放在按RAID 0/1存储的快速高性能的磁盘中;将不太常用的数据放在按RAID 5存储的经济高效的磁盘中。加速的RAID 0/1存储作为相对较大但不太昂贵的RAID 5区域的缓存。此外RAID 5空间采用的是日志结构的缓冲式奇偶校验技术。这种技术避免了RAID 5“读-修改-写”的缺点,它将数据写入自由空间,并将奇偶校验块写入缓存,直到数据的写入已进行到该数据分割块的末尾。

  HP SureStorage E 磁盘阵列 XP256是跨平台支持的高端磁盘阵列。容错与冗余的体系结构设计确保没有单点故障,具有动态镜像的写缓存XP256对所有的关键部件提供容错功能,其中包括写缓存的完全镜像。缓存分为两段,分别由独立的电源支持。在一个写操作中将所有的写数据放置在两个缓存段上,因此数据永远是复制的(镜像的)。一旦其中一个写数据拷贝有问题或丢失,另一个拷贝立即启动磁盘操作,由磁盘系统提供的具有动态刷新备用功能的增强RAID技术进行故障保护。

  HP SureStorage E 磁盘阵列 XP256采用特殊的诊断技术来检测和纠正磁盘错误。动态备用功能在必要时自动引入。XP256可以配置成8个备用硬盘,其中任何一个备用盘可以替代另一个同样容量的硬盘。

  冗余电源系统和不中断的服务与升级实现持续性的操作,每一个存储机柜都有一套独立的电源供应。每套电源均可支持整个磁盘阵列。因此,即使发生多个电源故障仍能保证持续的操作。不仅如此,所有的硬件升级都可以在不中断正常操作的情况下进行。所有的硬件配件可以在不中断正常操作的情况下被拆除、修复或替代。所有的微码升级均可以在正常操作时使用服务处理器(SVP)来完成。

IBM

  IBM 7133系列磁盘系统先进型D40与T40为UNIX与Windows NT服务器提供了很强的性能和高度的可用性。它具有SSA 160MB每秒带宽的磁盘存储性能;高性能的磁盘驱动器,其容量有36.4GB、18.2GB、9.1GB、4.5GB等几种;通过允许多个UNIX与Windows NT主机同时连接并共享IBM公司高性能的7133系列磁盘系统而获得磁盘共享能力;具备高容量,每一个塔式或抽屉式磁盘可以达到582GB的容量,每一块主机适配器能够支持3.5TB的容量;其结构具有冗余的数据通路、冷却单元以及两套供电系统;提高了远程镜像功能的灵活性,借助串行存储体系统(SSA)光扩展器连接的7133先进型产品之间的最长距离可达10公里;当IBM的串行存储专家软件与7133型D40与T40产品配合使用的时候,可以帮助用户简化存储管理。

  相对于基于SCSI的技术,IBM SSA技术有显著的可用性。如果在连接环路中出现了电缆故障,那么SSA适配器将自动通过一条备用通路继续对磁盘进行存取操作。如果出现了磁盘故障,那么这种热插拔式的驱动器可以被拔掉并更换一块新的驱动器,而不会干扰适配器与环路中其他磁盘之间的通信。

SUN

  Sun StorEdge A5X00体系存储器阵列的驱动器已有超过4000TB的数据存储量(截止到1999年10月1日),且现今都已经实现容量加倍。 新型号的Sun StorEdge A5200使用22个驱动器架,提供高性能和高密度。新型号的Sun StorEdge A5100阵列用高计算能力的驱动器以每MB极低的价格增加了存储密度。这些阵列在要求迅速顺序存取的应用程序方面——例如数据库和决策支持系统中——表现出色。Sun StorEdge A5200阵列拥有高冗余度,能保护宝贵的信息。模块化设计支持存储量增长,随信息存储要求的增加,存储量可从千兆字节增加到兆兆字节。

  它以从主机到驱动器100MB/s FC-AL的速度,确保性能和连通度。充分冗余RAID配置,支持关键任务的应用程序。高RAS 热插拔电源、风扇、接口插件板和磁盘驱动器增强了可用性。Sun Enterprise Volume Manager支持RAID标准0、1、0+1、5,增加了可靠性。从千兆字节到兆兆字节的架装系统,加强了配置的灵活性。

PROCOM

  PROCOM公司的NetFORCE 2500SFT/2600SFT企业级网络联机存储设备适合大中型数据存储应用的产品。其高速的CPU、最大900GB~1800GB的数据容量、双重和四重RAID控制器结构和冗余组件等先进的网络应用结构,极大地提高了数据存储和访问的可靠性。

  并行容错(SFT),通过消除所有错误信号及其他先进的可靠性设计,使NetFORCE 2500/2600SFT双路运行结构达到零中断运行的水平。这种双路运行结构是通过服务器模块之间的特殊同步接口来实现。当某个运行模块发生故障时,这种系统结构可以将故障模块的所有网络接口切换到正常运行的模块中。为了防止由于某一路系统故障导致同步接口的故障,这种特殊同步接口使用了一般网络连接进行备份(即通过网线将故障系统与正常运行系统进行连接,从而恢复了故障系统的功能)

  除了SFT服务器结构以外,NetFORCE 2500SFT的存储子系统是建立在双路运行的RAID控制器结构的基础上,NetFORCE 2600SFT则采用先进的4路运行RAID控制器结构,当其中任何一个控制器发生故障时,系统能够迅速恢复,并且立刻进入正常运行。NetFORCE 2500/2600SFT都支持0、1、3、5和10级RAID。

  NetFORCE 2500/2600SFT的核心软件集成了极强扩展能力的64位日志文件系统,并且通过捕获所有的数据变化并写入特定日志文件来实现数据的完整性。

 

相关文章
·认识RAID(2004年07月05日)
·RAID技术资料(2004年07月04日)
最新文章
·如何实现Linux的软件磁盘阵列(RAID)  (2004年07月05日)
·在企业里的电脑使用Linux RAID  (2004年07月05日)
·RAID原理,磁盘阵列(Disk Array)原理  (2004年07月05日)
·RAID技术入门  (2004年07月05日)
·在Linux下用软件实现RAID功能  (2004年07月05日)
·布署RAID时如何从DAS与SAN结构中选取  (2004年07月05日)





 
 
Copyright © 1999-2005 GZICP.com All Rights Reserved