武汉诺浰科技有限公司

技术知识

RAID 2.0 与 传统 RAID 的区别

RAID2.0的最大好处:重建快

    经过多年的应用实践和技术发展,传统RAID越来越体现出局限性的一面,如热点效应。为了方便管理,假设我们把整个RAID组格式化产生的逻辑盘都映射给某个系统,不同系统使用不同RAID组,若某个应用系统的业务特别繁忙,就会造成对应RAID组的物理盘读写压力大,形成热点。

    为了解决RAID组热点的问题,可以把RAID组的逻辑盘打散了用。于是,每个系统使用的逻辑盘来自不用的RAID组,这样就把繁忙系统的读写压力分散到更多的物理硬盘上了。但是,管理起来好麻烦。另一方面,每个系统的业务特征是动态变化的,忙的不会一直忙,不忙的也不一定一直让人省心,有可能某个时刻所有的应用系统都在往同一个RAID组上做读写,其它RAID组的硬盘在喝茶磕瓜子,这时,管理员童鞋就要做性能调优了,分散热点数据。

    于是出了池化的概念,即先把所有的逻辑盘放到一个大池子里,再从池子里往外分配存储空间。假设RAID组格式化后的逻辑盘大小是100GB,池子里有100个逻辑盘,A系统要使用200GB空间,那么系统会从池子里的每个逻辑盘上抠出2GB空间,100*2GB,组成一个200GB的虚拟盘分配给A系统,而不是把2个100GB的逻辑盘组成一个200GB的虚拟盘分配出去。这样A系统的读写压力会分散到100个逻辑盘上,而不是2个,而这100个逻辑盘可能对应着更多的物理盘,大大分散了压力。

    这个问题解决了,但是后来物理硬盘的容量越来越大,从原来的73GB增长到现在的16TB,坏盘之后数据重构时间从原来的一个小时增长到近乎十几个小时,这么长的时间里,如果再坏一块盘,那么RAID5的磁盘组就不可用了。即使用了RAID6可以容忍坏两块盘,磁盘I/O效率极低。

    于是,就出现了把盘切片,再做RAID,如下图:

传统 RAID + 池化 LUN

    上图中LUN虚拟化技术就是前面说的池化技术,仍然基于传统的RAID实现,只是多了一层虚拟盘的概念,原来是直接把逻辑盘分配出去,现在改成把虚拟盘分配出去,虚拟盘上的数据均匀分布在逻辑盘上。

 

   块虚拟化就是RAID2.0,它先把物理硬盘切成若干片,然后片与片之间再做RAID,然后一层层封装成虚拟卷映射出去,方法与池化技术类似。

 

RAID 2.0 技术原理

 

传统 RAID 与 RAID2.0 对比

 

物理硬盘切片之后,所有的片可以自由组合做RAID,不再局限于物理硬盘,原则就是一个RAID组内的片必须来自不同的物理硬盘。

 

基于底层块级虚拟化的RAID2.0+技术由于克服了传统RAID重构的目标盘(热备盘)性能瓶颈,使得重构数据流的写带宽不再成为重构速度的瓶颈,从而大大提升了重构速度,降低了双盘失效的概率,提升了存储系统的可靠性。

图中显示了传统RAID和RAID2.0+两种技术重构原理的对比:

1、左图传统RAID中,HDD0~HDD4五块硬盘创建RAID5,HDD5为热备盘,当HDD1故障后,HDD0、HDD2、HDD3、HDD4通过异或算法将重构的数据写入HDD5中;

2、在右图的RAID2.0示意图中,当HDD1故障后,2个RAID组受到影响,故障盘HDD1中的数据按照CK的粒度进行重构,只重构已分配使用的CK(图中HDD1的CK12 和 CK13),存储池中所有的硬盘都参与重构过程,重构的数据分布在多块硬盘中(上图所示,RAID组校验恢复出来的数据写到HDD4和HDD9两块盘上,而且数据量只是两个片的数据,HDD1上其它空白片不用管了。)

3、RAID2.0 技术不再有热备盘的概念,换成了热备空间,这里我们称之为热备块。一块物理硬盘故障后,来自多块物理硬盘的热备块顶上,数据重构不再是传统RAID的N对1,而是N对N。据某靠谱国产大厂统计,RAID2.0重构速度是传统RAID的20倍,可将10小时的重构时间缩短至30分钟。

 

RAID2.0 的数据重建(Reconstruction)

   RAID2.0 技术会根据热备策略自动在硬盘域中预留一定数量的热备空间(没有单独的热备盘 / hot spare 的概念了),用户无需进行设置,当系统自动检测到硬盘上某个区域不可修复的介质错误或整个硬盘发生故障时,系统会自动进行重构,将受影响的数据块数据快速重构到其他硬盘的热备空间中,实现系统的快速自愈合。

传统RAIDRAID2.0
需要手动配置单独的全局或局部热备硬盘分布式的热备空间,无需单独配置
多对一的重构,重构数据流串行写入单一的热备硬盘多对多的重构,重构数据流并行写入多块硬盘
存在热点,重构时间长负载均衡,重构时间短


    RAID2.0能够显著减少重构时间,避免数据重构时对一块硬盘的高强度读写,降低硬盘故障率。但它与池化技术存在同样的隐患,即由于虚拟盘做了宽条带的数据分布,多块物理硬盘损坏导致RAID组失效之后,整个存储池的数据会读写异常,影响范围大于传统RAID方式。因此,存储阵列若使用池化技术,最好采用RAID6。

在线客服
联系电话

159-2649-2641

微信

扫一扫 联系我