论文部分内容阅读
存储系统逐渐成为网络服务器系统的主要瓶颈。为了提高存储系统性能,当前研究的明显趋势是通过对应用负载进行分析,针对访问特征对数据预取、缓存替换、数据分布等策略进行优化。
数据块关系是应用的数据语义模式在存储系统中的表现,可以有效描述系统优化所关心的应用访问特征并指导性能优化。使用数据块关系指导存储系统性能优化需要解决若干关键问题:首先数据块关系的挖掘是一个NP-hard问题,其挖掘开销难以被实际系统接受。其次存储系统缺乏基于数据块关系访问特征的优化技术。
本文研究了高效的数据块关系挖掘方法和基于数据块关系访问特征的主要优化技术,使得挖掘开销相对传统方法下降一到两个数量级,系统的平均响应时间下降50%-79%。本文的主要贡献和创新点如下:
1.基于噪音过滤的数据块关系挖掘方法。本文分析影响数据块关系挖掘效率的主要原因--噪音,并提出了支持噪音过滤的数据块关系挖掘方法Z-Miner。Z-Miner在经典的深度优先挖掘算法的基础上,根据不同噪音的类型使用全局分支裁剪和分支聚类方法对模式树(FP-Tree)进行裁剪,从而减少噪音产生的冗余分支。实验证明,Z-Miner的挖掘性能相对经典挖掘方法提高10-67倍。而Z-Miner挖掘结果指导的数据预取使平均响应时间下降26%-66%,优化效果是经典挖掘方法的两倍。
2.数据块关系指导的缓存替换方法BDP(Block-correlations Directed cache replacementPolicy)。利用数据块关系指导缓存替换需要解决数据块关系识别、预测和减少预测失败惩罚几个关键问题。BDP使用时间戳方法识别访问流中按数据块关系进行访问的请求;利用历史访问信息和实时访问信息预测数据块未来的空间局部性特征;根据预测结果决定数据块的替换策略,减少预测失败带来的惩罚。本文同时给出了BDP缓存模型,优化BDP的参数配置。BDP的失效率相对LRU算法下降11%-38%,平均响应时间下降13%-31%,优于现有的考虑空间局部性的替换算法。
3.数据块关系指导的多副本数据分布技术。同一数据块可能存在多种数据块关系,导致用来顺序分布的数据块集合规模过大,使预取效率下降和磁盘负载增加。本研究提出了多副本数据分布技术,分析模式树获得适合数据分布和预取的副本集合,使数据块在磁盘上存在多个副本。在应用访问时选择合适的副本进行预取。多副本数据分布技术在保证预取效率的同时控制预取的数据量和预取的I/O次数。使用多副本数据分布技术可以使平均响应时间下降4.6%-13%。