文档详情

存储块级虚拟化技术解读.doc

发布:2018-10-26约2.39千字共6页下载文档
文本预览下载声明
存储块级虚拟化技术解读   【摘 要】存储的传统底层RAID技术自商用以来已经有30年时间了,但随着数据量的增大和单盘片容量的扩大,原有RAID技术问题越来越明显。由此提出了新的底层RAID技术——块级虚拟化技术,将单盘片重新规划,抽象了存储的真实物理地址,在软件层面上,它解析逻辑IO请求,将其映射成正确的物理地址。这种架构的创新,使存储性能和安全性得到大幅提升。   【关键词】块级虚拟化 RAID RAID重构   随着科技日新月异的发展,IT系统中的重要成员存储设备的底层核心技术也发生了本质的变化。早期大家所熟知的RAID、LUN、卷等概念已经不复存在,取而代之的是新一代的体系架构、新的底层存储技术——块级虚拟化技术,它给存储设备带来了更大的弹性、更强的可用性。   1 传统存储的RAID技术的工作原理   1987年,Patterson、Gibson和Katz三位工程师在加州大学伯克利分校发表了题为《A Case of Redundant Array of Inexpensive Disks(廉价磁盘冗余阵列方案)》的论文,其基本思想是将多个容量较小的、相对廉价的硬盘驱动器进行有机组合,使其性能超过一个昂贵的大硬盘,它不仅能提供更高的性能,而且还具备一定的容错能力。这一设计思想很快被接受,从此RAID技术得到了广泛的应用。   在基于外部控制器的硬盘存储系统(External Controller-Based Disk Storage System)中,RAID(Redundant Array of Independent Disks)是最基础的部分,RAID把多个硬盘组合成为一个逻辑扇区,因此,操作系统只会把它当作一个硬盘,其基本原理是把相同的数据存储在多个硬盘的不同地方。RAID技术主要包含RAID 0~60等数个规范,在实际应用中使用较多的是RAID 1、RAID 5、RAID 6、RAID10、RAID 50、RAID 60等。   RAID有两大特点:   (1)提高了传输速率:通过在多个硬盘上同时存储和读取数据来大幅提高存储系统的数据吞吐量(Throughput)。在RAID中,可以让很多硬盘同时传输数据,所以使用RAID可以达到单个硬盘几倍、几十倍的速率。   (2)通过数据校验提供容错:硬盘本身无法提供容错(不包括写在硬盘上的CRC循环冗余校验码),RAID容错是建立在每个硬盘的硬件容错功能之上,提供更高的安全性。在很多RAID模式中都有较为完备的相互校验、恢复的措施,甚至是直接相互的镜像备份,从而大大提高了容错度和冗余性。   2 传统存储的RAID技术的问题   在目前大多存储系统中,RAID都是以物理硬盘为单元,故其基础保障机制如图1所示:   图1 RAID基础保障机制   从图1可以看出,一旦坏盘时,将根据RAID原理进行重构。但重构过程中数据没有可靠性保障,如果在重构完成前再出现坏盘就将造成数据的丢失,且不可恢复。所以对于一个存储系统而言,其可靠性的最重要标志就是其RAID重构时间越短越好。   RAID重构时间=数据量÷硬盘读写速度,在以物理硬盘为单元的RAID保护模式下,其重构数据量等于硬盘容量,然而硬盘容量与读写能力的不匹配增长(见图2),导致采用以物理硬盘单元为RAID的传统方式效率低下,可靠性越来越差。   图2 硬盘容量与性能增长的不匹配   传统硬盘重构的瓶颈主要在目标盘(热备盘),因为所有成员盘将所有数据读出后全部写入到目标盘,目标盘写带宽就成了整个重构速度的关键。以一块2TB 7.2k rpm盘为例,重构时平均写入速度为30M/s左右,完成重构时间长达18个小时。   3 传统存储的上层资源管理   传统RAID下的资源管理示意图如图3所示。在实际使用存储系统时,通常会将硬盘固定地划分为若干个RAID,再分别将每个RAID的空间固定地切分为1个或N个小段映射给主机操作系统使用。   这样的传统架构有以下问题:   (1)配置规划复杂:在做存储系统规划时,要求管理员不仅能准确地计算出当前每一个单元业务的容量、性能需求,还要能准确评估每个单元业务未来发展的容量、性能要求;否则,要么设计不足不能满足需求,要么过度设计导致资源浪费。同时在存储系统的具体配置过程中,也需管理员通过复杂的配置过程一步步完成配置。   (2)配置调整困难:因为所有的分配过程都是固定的,如果因为各种未预测到的变化需要调整原分配,那么只能通过手动配置删除和重新分配,以及复杂的数据迁入迁出来实现。   4 新一代存储块级虚拟化技术的兴起   传统存储RAID方式随着单盘容量的增大,带来的问题越来越明显,尤其是坏盘出现后的RAID重构时间越来越长,系统可靠性受到很大的
显示全部
相似文档