磁盘阵列/RAID技术及在大导演硬盘播出中的应用

发布日期:[2006-2-24]  信息来源:睿智高远


【作者:马涛】在许多客户使用大导演硬盘播出时,由于播出机的硬盘容量有限,在素材的存取和数据备份上受到很大的限制,磁盘阵列解决了用户在素材存取和数据备份上拙襟见肘的困境。下面就磁盘阵列中RAID技术不同级别的优、缺点做以详细解释。
   RAID是英文Redundant Array of Inexpensive Disks的缩写,中文译作廉价冗余磁盘阵列,简称磁盘阵列。简单的说,RAID是一种讯嗫槎懒⒌挠才蹋ㄎ锢碛才蹋┌床煌绞阶楹掀鹄葱纬梢桓鲇才套椋呒才蹋佣峁┍鹊Jn6;鲇才谈叩拇娲⑿阅芎吞峁┦萑哂嗟募际酰ㄈ哂嗍侵钢馗磁渲孟低车囊恍┎考?当系统发生故障时,冗余配置的部件介入并承担故障部件的工作,由此减少系统的故障时间。从严格意义上说,“冗余”正如在韦氏字典中所定义的:“一个具有相同设备功能的备用设备系统。”当主设备出现故障时,冗余设备是可以立刻使用的替代设备)。在这一组硬盘中,数据按照不同的算法分别存储于每块硬盘上从而达到不同的效果这样就形成了不同的RAID级别。
     按照RAID级别划分,常见的有RAID0,RAID1,RAID3,RAID5, RAID10,RAID50还有不常用的RAID2, RAID4,RAID6。

RAID 0 定义:优势,弱点,适用范围
   RAID 0是由一块以上的硬盘组成,每块硬盘被等分成容量相同的条带集,数据也被分割成条带,在同一时间内向多块磁盘写入。具体如图所示:



优势:读写性能快
   我们从图中可以清楚地看到,系统向逻辑设备发出的I/O指令被转化为4项操作,其中的每一项操作都对应于一块硬盘,通过建立带区集,原先顺序写入的数据被分散到所有的四块硬盘中同时进行读写。四块硬盘的并行操作使同一时间内磁盘读写的速度提升了4倍。四块硬盘组合在一起形成一个独立的逻辑驱动器,容量相当于任何任何一块单独硬盘的4倍。
    弱点:数据安全性差                              
    这种 RAID 级别不具有容错性能,如果阵列中的任何一块磁盘出现故障,整个阵列中的数据都将会受到破坏,无法继续使用。使用RAID 0方式的安全性仅相当于单独使用一块硬盘的1/N(N为硬盘数)。
适用范围:视频处理、图像编辑、视频点播

RAID 1 定义:优势,弱点,适用范围
RAID 1又被称为磁盘镜像,由两个以上偶数个硬盘组成,每一个磁盘都具有一个对应的镜像盘,对写入任何一个磁盘的数据都会被复制镜像盘中,同时系统可以从这一组镜像盘中的任何一个磁盘读取数据。具体如图所示:




优势:数据安全性高
     RAID 1下,任何一块硬盘的故障都不会影响到系统的正常运行,而且只要能够保证任何一对镜像盘中至少有一块磁盘可以使用,RAID 1甚至可以在一半数量的硬盘出现问题时不间断的工作。当一块硬盘失效时,系统会忽略该硬盘,转而使用剩余的镜像盘读写数据。
弱点:磁盘利用率较低
   显然,磁盘镜像肯定会提高系统成本。因为我们所能使用的空间只是所有磁盘容量总和的一半。  
适用范围:数据库服务器、文件服务器

RAID 3 定义:优势,弱点,适用范围
   RAID3至少由三块以上硬盘组成,以其中一块特定的硬盘来存放数据的奇偶校验位(由真实数据通过一定的算法得出),真实数据则分段存储于其余硬盘中。具体如图所示:



优势:有冗余,硬盘利用率高
如果数据盘(物理)损坏,只要将坏硬盘换掉,RAID控制系统则会根据校验盘的数据校验位在新盘中重建坏盘上的数据。利用单独的校验盘来保护数据虽然没有镜像的安全性高,但是硬盘利用率得到了很大的提高,为(N-1)/N 其中N为RAID中硬盘的个数。
弱点:读写性能差
    当向RAID 3写入数据时,情况会变得复杂一些。即使我们只是向一个磁盘写入一个数据块,也必须计算与该数据块同处一个带区的所有数据块的校验值,并将新值重新写入到校验块中。我们可以看出,一个写入操作事实上包含了数据读取(读取带区中的关联数据块),校验值计算,数据块写入和校验块写入四个过程。读写性能尤其是写性能大大降低,校验盘很容易成为整个系统的瓶颈。
适用范围: 流媒体、视频点播、WEB服务器、FTP服务器


RAID 5 定义:优势,弱点,适用范围
     RAID5是在RAID 3的基础上进行了一些改进,同样也是由三块以上的硬盘组成,也是以数据的校验位来保证数据的安全,但它不是以特定硬盘来存放数据的校验位,而是将数据段的校验位交互存放于各个硬盘上。具体如图所示:



优势:克服RAID3校验盘性能问题,有冗余,硬盘利用率高
如果数据盘(物理)损坏,只要将坏硬盘换掉,RAID控制系统则会根据校验盘的数据校验位在新盘中重建坏盘上的数据。利用单独的校验盘来保护数据虽然没有镜像的安全性高,但是硬盘利用率得到了很大的提高,为(N-1)/N 其中N为RAID中硬盘的个数。
弱点:读写性能差
   当向RAID 5写入数据时,情况会变得复杂一些。即使我们只是向一个磁盘写入一个数据块,也必须计算与该数据块同处一个带区的所有数据块的校验值,并将新值重新写入到校验块中。我们可以看出,一个写入操作事实上包含了数据读取(读取带区中的关联数据块),校验值计算,数据块写入和校验块写入四个过程。读写性能尤其是写性能大大降低。
适用范围: 文件和应用服务器、数据库服务器、WEB、Email服务器、局域网服务器

RAID 10
    RAID10也被称为镜象阵列条带由至少四块硬盘组成,象RAID0一样,数据被分割成条带,在同一时间内向多块磁盘写入;象RAID1一样,每个磁盘都有一个镜象磁盘。其目的是在保证数据安全的情况下,提高数据的读写性能。
RAID 50
RAID50也被称为镜象阵列条带由至少六块硬盘组成,象RAID0一样,数据被分割成条带,在同一时间内向多块磁盘写入;象RAID5一样,也是以数据的校验位来保证数据的安全。其目的在于提高RAID5的读写性能。
RAID 2
     RAID2又被称为带海明码校验磁盘阵列,是为大型机和超级计算机开发的。磁盘驱动器组中的第一个、第二个、第四个……第2的n次幂个磁盘驱动器是专门的校验盘,用于校验和纠错,例如七个磁盘驱动器的RAID2,第一、二、四个磁盘驱动器是纠错盘,其余的用于存放数据。使用的磁盘驱动器越多,校验盘在其中占的百分比越少。RAID2对大数据量的输入输出有很高的性能,但少量数据的输入输出时性能不好。RAID2很少实际使用。
     由于海明码的特点,它可以在数据发生错误的情况下将错误校正,以保证输出的正确。它的数据传送速率相当高,如果希望达到比较理想的速度,那最好提高保存校验码ECC码的硬盘,对于控制器的设计来说,它又比RAID3,4或5要简单。但是利用海明码校验必须要付出数据冗余的代价。
RAID 4
     RAID4和RAID3很相似,不同的是RAID4对数据的访问是按数据块进行的,也就是按磁盘进行的,每次是一个盘。 RAID3是一次一横条,而RAID4一次一竖条。所以RAID3常须访问阵列中所有的硬盘驱动器,而RAID4只须访问有用的硬盘驱动器。这样读数据的速度大大提高了,但在写数据方面,需将从数据硬盘驱动器和校验硬盘驱动器中恢复出的旧数据与新数据通过异或运算,然后再将更新后的数据和检验位写入硬盘驱动器,所以处理时间较RAID3长。
RAID 6
      几乎没有进行商用。它使用一种分配在不同的驱动器上的第二种奇偶方案,扩展了RAID 5。它能承受多个驱动器同时出现故障,但是,性能尤其是写操作却很差,而且,系统需要一个极为复杂的控制器。当然由于引入了第二种奇偶校验值,所以需要N+2个磁盘,同时对控制器的设计变得十分复杂,用于计算奇偶校验值和验证数据正确性所花费的时间比较多,造成了不必须的负载。
     还有一些硬件厂商自己定义的RAID如惠普Smart Array阵列卡实现的RAID ADG和IBM的RAID 5E,这些在实际使用中很少用到。

     通过以上介绍我想大家已经对磁盘阵列中RAID技术有了一定的了解,大家可以在使用大导演硬盘播出系统时,根据自己实际情况配置磁盘阵列及选择RAID技术的使用。(以上信息大导演提供,仅供大家参考,并欢迎指正。)


【关闭窗口】  打印此页】
版权所有:北京睿智高远视频技术有限公司  1998-2008
  京ICP备05007281号    Designed:IE7.0 @ 1024*768