现在的位置: 首页 > 综合 > 正文

RAID技术简介

2013年11月26日 ⁄ 综合 ⁄ 共 2592字 ⁄ 字号 评论关闭

RAID技术简介

 

RAID是Redundant Array of Independent Disk首字母的缩写。该词是于1988年由位于伯克利的加利福尼亚大学的研究员Patterson,Gibson和Katz在描述阵列设置和应用的文章中提出的。

过去,计算机系统只能向一个硬盘写信息。硬盘价格昂贵并且容易出现故障。这主要是因为硬盘是机械装置而其它的是电子系统,所以硬盘成为计算机系统中最薄弱的一环。由于硬盘驱动器包含大量的高速运转的机械部分。所以主要的问题不在于硬盘是否会出故障,而是何时出故障。

通过提供磁盘冗余系统,RAID对计算机管理和访问大容量数据存储的方法进行了革命性的变革。它可以将数据写到多个廉价磁盘上,而不是只可以写到单个大容量的昂贵磁盘(SLED)上。最初RAID代表Redundant Array of Inexpensive Disks后来改为Independent Disks。

RAID基本原理

RAID通过两种方法完成了冗余和容错功能:一种是分段(striping),另一种是奇偶校验。分段就是每次将文件以块的形式写到多个磁盘上。这种技术将数据分别写到多个驱动器上,提高了数据的传输速率和整个磁盘的交易次数。适用于事务处理系统。但由于整个系统的可靠性依赖于最差的单个磁盘,所以整体上不太可靠。

奇偶校验通过对传输的数据执行冗余检验,确保了数据的有效性。如果RAID系统中的一个磁盘出错,其它磁盘有能力重建出错磁盘上的数据。而所有的这些对操作系统来说都是透明的。由磁盘阵列控制器(DAC)进行控制。

部件



RAID的主要部件是磁盘阵列控制器(DAC)和磁盘阵列(rank)。下图是RAID-5的例子。数据被分段写到5个磁盘上,奇偶校验块用来恢复出错磁盘的数据。RAID级别有多种。一些RAID级别提高速度,一些提供数据保护,还有一些如RAID-5是两者的组合。下面我们逐个讨论。

 

数据分段

过去计算机将一个文件写到一个磁盘上。分段允许你将一个文件分成多块,同时写到多个磁盘上。如果你将一个文件分成5个数据块,放到5个磁盘上,各块将被同时写到相应的磁盘上。如果你有5个OLTP交易,每一个的容量都小于一个数据块,那么你可以同时处理5个不同的交易。

大多数的RAID级别以块为基准进行分段,但有些可以将数据分段到位或字节的水平。块的大小参照分段的深度由系统管理员决定。

为了使磁盘子系统的交易处理能力达到最大,数据必须从多个驱动器同时读写。为了实现这个功能,用户数据块被分段放到驱动阵列上。一个分段包括位于每块磁盘相同位置的一行扇区(每扇区包括512字节)。分段深度(或者说每块的扇区数),由系统软件定义。

分段深度直接影响到性能,深度太浅要求系统执行更多的I/O命令。如果深度太深,处理器的多任务能力和多驱动器的优势就显示不出来。

在理想的交易环境下,主机的每个请求只涉及一个驱动器,这就允许多个驱动器进行多个并发交易。

将数据分段放到多个磁盘阵列上解决了前面描述的单个系统驱动器负载过重的问题。消除了使用专用的驱动器的问题,并保证了在多个驱动器上的数据处理负载平衡,同时通过同时写多个数据块增加了性能。

奇偶校验

大家经常将奇偶校验与镜像混淆。镜像是创建磁盘的一个副本。将数据同时写到两个驱动器上。镜像系统有非常好的可靠性和非常好的交易处理结果,因为可以从两个盘中的任一个取数据。缺点是使用购买两个盘的费用,只能获得一个盘的容量。镜像的额外开销是单个磁盘空间的1倍。当一个磁盘出错,镜像盘代替出错盘继续使用。

奇偶校验提供了和镜像一样的保护功能,但额外开销较低。如果用户的阵列由5个磁盘组成,4个磁盘用来存放数据,一个用来存放奇偶校验位。那么额外开销是20%。在考虑费用的前提下,这是比较好的选择。



计算机用0或1表示数据。产生奇偶校验的方法是异或运算(XOR),从每个盘中取出一位(0或1)计总数。如果总数是偶数个1,奇偶校验位记为0。否则记为1。下图是奇偶校验位的例子,第一行的4位加起来是2,奇偶校验位为0,第二行的4位加起来是3,奇偶校验位为1。

奇偶校验不依赖于RAID的级别,可以在一个磁盘上使用,也可以在多个磁盘上使用。不管怎么用,对5个磁盘来说都要浪费20%的空间,对4个磁盘来说要浪费25%的空间,对3个磁盘来说要浪费1/3的空间。



下图表明RAID阵列中的一个磁盘出故障了。一旦将该磁盘更换以后,磁盘阵列控制器(DAC)就要重建以前的内容。

RAID级别

目前业界一致同意6种基本RAID级别,从RAID 0到RAID 5。每一种RAID级别设计要么用来提高速度,要么是提供数据保护,或兼而有之。

l  RAID-0 数据分段

l  RAID-1 镜像磁盘阵列

l  RAID-2 海明编码并行阵列

l  RAID-3 奇偶校验并行阵列

l  RAID-4 使用专用奇偶校验盘的独立传输阵列

l  RAID-5 无单独奇偶校验盘的独立传输阵列

比较常用的RAID级别是RAID-0,RAID-1,RAID-5。下面详细讨论。

RAID-0数据分段



RAID-0将数据分段放到所有的驱动器上,不使用奇偶校验。如果一个磁盘出现故障,必须将备份数据恢复到5个驱动器上。该RAID级别用来提高速度,是所有的RAID级别中速度最快的,但是该级别不提供数据保护。

RAID-1镜像

RAID-1技术要求每一个主数据盘必须配一镜像盘。主盘和镜像盘的内容完全相同。RAID-1的数据保护性最好,但速度比RAID-0和RAID-5慢。

数据往主硬盘上写的同时,也向镜像盘上写。镜像盘的处理过程对用户来说是不可见的。因为这个原因,              RAID-1也被成为透明镜像。用户可以设置RAID-1只写单个磁盘并同时在该磁盘做镜像,也可以将数据分段放到多个磁盘上,每一个磁盘同时又有一个镜像盘。这叫作分段镜像(striped mirroring),RAID 1+0,RAID10有时也称为RAID 6就是这种镜像。

 

 

RAID-5分布奇偶校验的独立传输

RAID-5将数据以块进行分段并且使用奇偶校验。使用RAID-5技术,阵列的每个盘上都存放用户信息和奇偶校验信息。独立或并行执行读写操作。该级别是最常用的RAID级。RAID-5不如RAID-0的速度快,也不如RAID-1提供的数据保护性好。但综合来说,它提供了较快的速度和比较好的数据保护,是比较好的选择。

 

 

抱歉!评论已关闭.