论文部分内容阅读
人类社会已进入信息时代,每年产生的数据量都以惊人的速度持续增长。面对如此浩瀚的数据量,大量的数据存储容量需求需要一个可扩展的数据管理办法,能够自适应大规模存储系统的动态变化,而一个有效的解决办法是存储虚拟化。但是,当不同的应用服务在虚拟存储设备上产生大量数据时,如何有效地在虚拟存储池中基于数据的特征来存放数据以及用户如何快速地进行数据定位是目前-个具有挑战性的问题。针对该问题,本文研究基于存储虚拟化的数据分布策略,完成的主要工作有如下几个方面:首先,提出了一种基于存储虚拟化的数据分布策略(DDSBSV)模型,并对该模型中的存储虚拟化和存储资源绑定机制进行了比较详细的设计与分析。DDSBSV的基本思想是:一是设计了一个内核可加载模块实现存储虚拟化;二是根据I/O负载特征,将存储负载合理分配给不同虚拟磁盘绑定集;三是针对每个虚拟磁盘绑定集中的存储介质实现负载均衡;四是根据顺序访问度和热度在虚拟磁盘绑定集之间进行合理的数据迁移。因此,模型提供了三个阶段的数据分布策略,从而满足异构应用服务的需求以及充分利用外存储系统的存储资源。其次,在Linux2.6内核中实现了DDSBSV的详细设计。借鉴虚拟内存的管理思想和扩展Device Mapper机制实现存储虚拟化,在此基础上,提出了一种存储资源绑定思想。通过分析I/O负载特征,动态变更虚拟磁盘绑定集的权重,结合基于权重的轮询调度算法,实现数据分发的公平性和数据的分级存储。采用动态区间映射算法实现了每个虚拟磁盘绑定集中存储介质的负载均衡。采用加权有向图WDG以及基于图的深度优先搜索算法计算I/O特征的顺序访问度,根据顺序访问度和热度实现虚拟磁盘绑定集间的负载迁移,进一步优化数据的布局,实现数据的分级存储。最后,实验方案采用DDSBSV存储系统与Linux LVM2的性能进行对比测试以及DDSBSV虚拟磁盘绑定集内存储介质的负载均衡。通过实验表明在混合负载工作模式下DDSBSV的吞吐量、带宽和平均响应时间比LVM2有较高的性能提升。同时DDSBSV可以保证在大规模网络存储系统中数据的存储QoS需求、数据的快速访问和系统的自适应性。