一种提高云存储中小文件存储效率的方案(4)

3.2.2系统性能决策值计算利用AHP进行权重计算。由于读取文件是最频繁的操作,因此认定读取文件时间为3个指标中最重要的,节省的内存空间其次。据此,计算3个指标的权重如表2所示。

HDFS,Hadoop

表2权重

将标准化的数据与相应的权重相乘之后相加,得到系统性能决策值,如图8所示。

图8分析结果

3.2.3结果分析从图8可以看到,两种数据标准化方法都反映出一个规律,即在本文的实验环境中,性能决策值随着SFQ长度的增大呈现一种类似开口向上的抛物线状变化,并且在SFQ长度为400时取得最小值。由于我们采用了逆指标进行计算,因此当性能决策值最小时,表示系统性能达到了最优。由此可以得出结论:在本文的云存储环境中,SFQ长度取400是小文件合并的最优方式;根据基于AHP的系统负载预测算法对系统运行状况监控的结果,可以得到小文件合并的最佳时间。

通过实验可知,小文件合并的规模越大,名称节点消耗的内存空间将越少,与此同时,对小文件的操作(读取、删除等)以及合并文件所花费的时间代价也将越大。在其他基于HDFS的存储系统中采用本文的方案进行分析和部署,都可在时间消耗和内存利用率之间实现一种最优平衡,实现在小文件存储效率提高的同时不影响系统性能的目标。

4 结语

本文针对基于HDFS的云存储系统中小文件存储效率不高的问题,提出了一套完整的解决方案。在该方案中,采用SequenceFile技术将小文件以队列的形式合并为大文件,从而实现了节省名称节点所占内存空间的目的,同时也实现了对合并之后的小文件的透明操作。在确定影响队列长度的指标之后,通过实验获取指标值,采用数据标准化方法和三标度层次分析法确定队列长度的最优值,使得小文件的合并能在合并时间、文件操作时间和节省内存空间之间达到一种平衡。基于负载均衡的目的,本文设计了基于AHP的负载预测算法对系统负载进行预测。

在以后的工作中,我们将从以下两个方面来进行改进:①将小文件的合并以及小文件的读取改进为Map-Reduce任务,从而提高操作的效率;②对SequenceFile中的小文件查找算法进行改进,提高小文件查找效率。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/e4cdbccb81595b16ffc24440833cf386.html