
10.41 深入浅出RAID存储技术.doc
数字视频技术的发展,使得电视监控系统的发展已经远远超出摄像机、矩阵、监视器的范围,越来越多的是网络技术和视频存储技术。DVR及DVS的广泛应用,使得视频的存储不在局限于单个的直连硬盘,人们的不再考虑一个DVR机箱可以挂几块500G的硬盘,而是考虑使用DAS还是SAN来完成海量T级别的视频数据存储了。青藏铁路、T3、浦东机场,都是数十个T的磁盘阵列来进行视频存储和备份,工程商不再考虑是用希捷还是西数的硬盘,而是考虑HP、EMC、IBM、H3C,谁家的系统更符合自己的需要。视频监控的IT时代已经来临了。
磁盘阵列是一种采用RAID技术、冗余技术和在线维护技术制造的一种高性能、高可用的磁盘存储设备。磁盘阵列的核心技术 —— RAID技术,是实现廉价磁盘冗余阵列的一系列方法。
v
RAID0
RAID0 比如有两块盘,100M的文件,现在想把文件写到盘上,可以写到任何一块盘上,比如写到A盘,耗时10秒;现在如果这样,通过计算,把100M的数据分成两个50M,每个盘各写50M,这样总耗时:5秒,是不是快了,当然实际肯定高于5秒,至少比写到一块盘快。同样读数据也是这样,从两块盘并行读,是不是也必一块盘要快呢?这就是RAID0,任何大于2块数量的磁盘就可以作RAID0,如果磁盘容量不一样,比如一块40G,一块80G,不会浪费任何空间(仅限RAID0模式),这样两块盘作RAID0,总容量最后就是40G+80G=120G。一般情况,RAID0容量=各个盘容量之和。RAID0是所有模式中速度最快的。也是安全性最低的,因为数据都分割了存放,任意一块盘损坏,数据全部丢失。无任何安全性可言。
v
RAID1
RAID1 为了实现数据冗余,防止一块盘损坏,数据就全丢失的情况发生,将一份数据同时写到两块盘上,任何一块盘损坏,另一块块盘在线接管。所以RAID1也叫镜像RAID。是所有模式中速度最慢的,因为数据要同时写两块盘。但是安全性是最高的。无任何速度可言。任意偶数块盘就可以作RAID1。如果磁盘容量不一样,最终按照容量最小的盘算。RAID1总容量=最小容量X磁盘数量÷2。
v
RAID0+1
RAID0+1(也称RAID10) 比如这样:两块盘先作RAID0,然后再找两块盘,将原来做好的RAID0中数据复制一份到自己,与原来的RAID0做成RAID1;或者两块盘先作RAID1,然后再找两块盘,分担数据流量,与原来的RAID1做成RAID0,这样就组成了RAID10。这种模式是所有模式中性能和安全性都最好的一种,但是成本是最高的。
v
RAID3
RAID3 顾名思义RAID3就是最少需要3块盘组成,原理是这样的:和RAID0一样,数据分割,并行写入各个磁盘,除了其中一块磁盘,这块盘叫做奇偶校验盘(一般用P表示),单独存放奇偶校验信息,所谓奇偶校验,就是:因为数据被分割了存放,所以可以根据这些分割的数据来做一个恢复措施,利用我这边的数据和你那边的数据算出一些信息,如果任意一边数据丢失,通过另一边的现存数据和事先算好的信息,就可以再生成丢失的数据。这样,如果任何一块盘损坏,都可以根据另外的磁盘重新生成坏盘上的数据,不管损坏的是数据盘,还是校验信息盘。由于校验信息占用空间不大,所以只需一块盘就够了,信息都放在这块盘上,这样既实现了RAID0的速度(比RAID0稍慢),又实现了RAID1的安全(RAID1是纯数据的镜像,RAID3是利用奇偶校验信息,占用空间小),成本又相对低廉,何乐而不为?但是如果同时(同一时刻)坏掉两块盘,数据就完了。RAID3总容量=容量总和-P盘容量。
v
RAID5
RAID5 RAID5是RAID3的升级版本。 RAID3有个缺点:作为存放校验位的硬盘,工作负荷会很大,因为每次写操作,都会把生成的校验信息写入该磁盘,而其它磁盘的负荷相对较小,这会对性能有一定的影响。RAID5是:当向阵列中的磁盘写数据,奇偶校验数据均匀存放在阵列中的各个盘上,其他和RAID3一样。现在RAID5是应用最普遍得一种模式。
小知识:热备盘(hot spare盘,又称S盘)。刚才说了,任何模式的RAID阵列,如果同一时刻坏掉两块以上得盘,数据就完了(RAID0坏一块就完了),但是这种情况一般不会发生,除非人为或者不可抗力引发,那么我们就不管了吗?不行!如果某天,RAID阵列有一块盘损坏,而没有采取措施(比如没有多余备用硬盘,或者周末,无人),那么过一段时间,如果又坏了一块,咋办?哭吧你就!虽然同一时刻坏多块盘的情况很少,但是同一时期坏盘的几率就很大很大,因为硬盘生产批次,所处环境都一样。那么怎么避免这种情况发生呢?热备盘就派上用场了。热备盘就是为了一块盘损坏后,无人值守情况下,自动补上坏盘的位置,数据重新生成在这块新盘上。可以设多块热备盘,有的阵列可以只设一块热备盘,供阵列中所有的RAID组(就是按照一个RAID模式所作的RAID)使用,有的就只能每个RAID组都必须设一块热备盘(IBM的就是这样)。 可能有人有个疑问:在RAID5或者3中,如果一块盘坏了,坏的数据怎么继续读出?是这样的:损坏的数据是一边校验,一边传送给外部的,这样其实是很危险的,万一再坏一块盘。。。。。
v
RAID5E
RAID5E 为了防止没有热备盘的情况下先后坏掉多块盘引起的数据丢失,一旦某块盘损坏,不像RAID5,只有再请求数据读写的时候,现场生成数据流,发送给外部,这些数据没有存放起来,RAID5E将损坏的数据重新校验生成,压缩存放在其他盘上的未使用的空间上(这些未使用的空间,系统是认不到的,没有参与RAID的建立,没有条带化,不属于RAID组),这样就和RAID5+S差不多,只是S被均匀分部到了其他盘上。这样的话,先后坏两块盘,同样能保持运行。RAID5E中不存在热备盘,只是每块盘上划出一些空间,用作热备而已,所以整个RAID模式还是RAID5(不带S盘)级别。
v
RAID5EE
RAID5EE 与RAID5E相比,RAID5EE是完全携带了S盘,不过这个S盘不是真正的一块物理盘,而是均匀分部在其他盘上,S空间参与了条带化,属于整个RAID组的一部分,这样恢复数据更有效率,其他和RAID5E一样。
西刹子整理
欢迎光临我的博客
http://hi.baidu.com/sas123cn
[ 本帖最后由 云杉上的蝴蝶 于 2008-9-29 00:33 编辑 ] |