论文部分内容阅读
随着IT信息化和移动互联网的飞速发展,数据存储量快速增长。随着存储设备使用量的增加,存储设备的能耗已达到数据中心的26%~40%。因此,存储设备的节能研究具有重要意义。近年来,连续数据存储的应用日益广泛,如视频监控、连续数据保护、虚拟磁带库、备份、归档等。连续数据存储系统具有特定的数据访问模式和存储特性,例如以顺序数据访问为主,对随机性能要求不高;对带宽的要求不高,但对数据的可靠性、存储空间要求较高;负载以写操作为主等。针对连续数据存储系统的节能研究需要充分考虑到上述因素,在磁盘阵列存储系统的组织结构、节能机制和调度算法方面进行适应性研究,以充分发挥存储设备的效能,降低存储系统的能耗。S-RAID是一种适用于连续数据存储的节能磁盘阵列,采用局部并行策略,通过改变数据块地址排列方式使局部磁盘并行而降低存储系统能耗。S-RAID均衡了存储系统的性能与能耗,在保证性能需求的前提下,降低存储系统的能耗。本文在现有S-RAID研究的基础上,面向连续数据存储的磁盘阵列的节能与性能优化等方面进行了如下研究:(1)S-RAID的局部并行数据布局是静态的,适合单一平稳的工作负载,难以适应较高强度的波动负载或突发负载。为此,针对连续数据存储的复杂应用负载,提出一种动态节能数据布局DEEDL。DEEDL在局部并行节能策略基础上,采用地址空间动态映射机制,根据I/O写负载需求的变化动态分配具有合适并行度的存储空间。DEEDL能够更好地适应波动负载或突发负载。实验表明,在满足性能需求及单盘容错的条件下,DEEDL的节能效果相比S-RAID、PARAID和eRAID 5等有明显的优势,其功耗为S-RAID功耗的83%、PARAID功耗的29%、eRAID 5功耗的31%。(2)为保证更多磁盘待机节能,S-RAID执行“读─改─写”的“小写”操作,在小写过程中,由于写操作引入了额外的、等量的读操作,因此S-RAID中单位磁盘的写性能较低。为此,提出一种基于预读与I/O聚合的性能优化方法,通过减少I/O数和寻道次数,增大I/O尺寸来提高磁盘的传输率,包括:识别来自上层应用的写请求顺序流;由写请求顺序流触发大粒度异步预读,预读小写操作所需要的旧数据、旧校验数据;进行写操作聚合,将若干个写请求合并为大尺寸的写请求;建立基于预读、写缓存、写回的写操作流水线等。这些策略充分利用了连续数据存储应用的存储特性以及现代磁盘的性能优势,显著提高了S-RAID的写性能。采用98%顺序写的负载测试,性能至少提高47%,而在交织写顺序流下的写性能则可提高56%以上。(3)连续数据存储应用以顺序访问为主,存在少量随机访问,而这些少量随机访问也会显著降低磁盘性能;同时,由于S-RAID突出的小写问题,影响了其写性能。为此,在S-RAID的基础上提出了面向该类存储系统的磁盘阵列——Ripple-RAID,Ripple-RAID对顺序访问进行了布局和读写性能的优化,采用了新的局部并行数据布局,综合运用基于SSD的地址映射和数据更新、基于流水技术渐进生成校验、Cache优化等策略,在单盘容错条件下,写性能和能耗两项指标均优于S-RAID 5。24小时节能实验中,在80%顺序写负载条件下,请求长度为512KB时,写性能为S-RAID 5的3.9倍,Hibernator、MAID写性能的1.9倍,PARAID、eRAID 5写性能的0.49倍;而比S-RAID 5节能20%,比Hibernator、MAID节能33%,比eRAID节能70%,比PARAID节能72%。