贺鹰
[摘 要]Lustre是一个开源的分布式并行文件系统,扩展性强。Lustre文件系统的设置是影响其读写性能非常重要的因素,所以研究Lustre文件系统的性能就需要对其设置参数进行仔细斟酌,才能使Lustre文件系统更符合应用的需求。
[关键词] Lustre;文件系统;性能优化;条块
中图分类号:TP316 文献标识码:A 文章编号:1009-914X(2016)14-0260-01
一、Lustre系统架构
Lustre由客户端,两个原数据服务器MDS(一个运行,一个备份)和对象存储服务器OST,通过高速的以太网或QWS Net(QUALCOMM Wireless Systems)通讯所构成。Lustre最多可以支持多达10000个客户端;两个MDS采用共享存储设备的Active-Standby方式的容错机制;存储设备跟普通的,基于块的IDE存储设备不同,是基于对象的智能存储设备。作为首个开源的基于对象存储设备的分布式并行文件系统,Lustre可以说是性能优异,并被越来越广泛的应用。
二、影响性能的主要因素
人们广泛的应用lustre文件系统,如何让它在应用中发挥更高的效率呢?影响其性能的因素又是什么呢?通过研究发现在Lustre设置中,OST对象数以及数据分片大小是最影响系统性能的两个方面。这也是Lustre文件系统并发I/O操作提升性能的关键因素。在Lustre文件系统实际应用时,OST对象数这一关键参数是在系统的初始化时即配置的,主要体现在三个不同的配置层面,分别是对象数,分片大小,起始OST。当对象数的值赋予-1时,表示在OST上实施条块的分割,以确保I/O能够获得最大化的操作并发性能;当起始OST设置为-1时,表示不指定OST,实现了负载的均衡;而分片大小要根据应用的实际需求设置不同的值。
1、分片大小对系统性能的影响
在Lustre文件系统应用时,由于分片的大小能够影响到Lustre文件系统的读写操作性能,所以在验证影响Lustre文件操作性能的实验时,也必须对分片的大小对聚合带宽的影响进行相应的测试。在验证实验时,分别测试了Lustre文件分片由小逐渐增大过程中Lustre文件系统读写的聚合带宽的改变及读写效率的差异。
通过测试可知,当分片大小逐渐增大时,会使得Lustre文件系统的读写聚合带宽都降低,进而影响Lustre文件系统的操作性能。为了更好的发挥出Lustre文件系统的整体性能,在实际应用时最好设置比较小的条块,才能更好的增加系统的并发性,进而增加系统的聚合带宽,增加使用的性能。
2、对象数的不同也是影响系统性能的重要方面
在Lustre文件系统应用时,影响Lustre文件系统性能的自身设置除了分片的大小,对象数的不同也能够影响到Lustre文件系统的读写操作性能,所以在验证影响Lustre文件操作性能的实验时,也必须对对象数的不同对聚合带宽的影响进行相应的测试以验证对象数的不同对聚合带宽的影响。在验证对象数对Lustre文件系统性能影响实验时,分别验证测试了Lustre文件对象数小逐渐增多过程中Lustre文件系统读写的聚合带宽的改变以及读写效率的差异,实际测试对象数不同对Lustre文件系统聚合带宽影响的实验数据。
对象数的不同对Lustre文件系统读写聚合带宽的影响可知,Lustre文件系统的文件对象数的增加会使得其读写聚合带宽呈递增的趋势。为了能够更好的反应Lustre文件系统应用时文件对象数的不同对文件读写操作性能的影响,首先固定分片大小。在Lustre文件系统分片大小固定时,当对象数不断增加时,其聚合带宽也是逐渐趋于上升的态势,由此可知,当对象数目设置为1时,Lustre文件系统无并发性,聚合带宽也最低,但是当对象数逐渐增加时,Lustre系统并发性能以及聚合带宽都在提升,所以只要合理设置对象数的大小,会对Lustre文件系统性能带来更有利的发展局面。
三、性能优化策略
根据影响Lustre性能的因素及条件分析可知,影响Lustre文件读写性能的原因是多方面的,然而却有几个比较重要的方面,如果能够在这几个方面进行相应的优化设置,则会在一定程度上提升Lustre文件系统的文件操作读写性能。
Lustre设置包括分片大小与对象数的差异不同都会影响到Lustre文件系统的读写操作性能。由分片大小对Lustre文件系统性能影响可知,当对象数的字节数逐渐增大时,Lustre文件系统的文件读取性能出现逐渐下降的趋势,并且在分片大小为64K字节时最高,当分片大小增加到128M时,其性能基本下降1倍;并且其数据文件的写入性能在对象数的比较小的范围内,通过是小于4M字节大小范围内基本保持不变,然后当分片大小继续增加时其性能也会继续下降,主要体现在当分片大小增加到128M时,其性能直接下降3倍,所以在Lustre文件系统实际应用时,应设置比较小的条块字节,比如64K字节就是一个比较好的值。由分析可知,影响Lustre文件系统性能的自身设置还是有对象数的不同,根据对象数差异对Lustre文件系统性能影响结果进行分析,当对象数只有1个时,Lustre文件系统的读写性能最低,当对象数增加到2个时,文件读取与写入性能都将近提升了1倍,然而当对象数增加到2个时,Lustre文件系统的读取性能则出现了下降,但是其数据写入性能还是在继续提升,所以对象数刚开始增加时能够同时提升Lustre文件系统的读写性能,然而当对象数增加到一定数值时,其数据读取性能则出现了下降,所以在实际应用时一定要注意对象数的设置才能够提供一个更好的Lustre文件系统性能,通过实验可知,设置5个对象数是一个比较好的选择。
总之,通过Lustre性能测试研究结果可知,要想不断的提升Lustre应用系统的整体应用性能,就需要不断的在网络传输、Lustre初始设置以及应用端设置等几个不同的层面多测试、多总结、多分析应用,才能够在具体的实际应用中根据实际情况设置更好的数据,达到提升Lustre系统性能的目的。
四、小结
本文从Lustre设置详细分析了Lustre性能提升相关的影响因素,并根据测试结果进行了详细的分析,提出了不同的测试应用条件下,Lustre文件系统的具体性能对比,进而根据这些对比结果提出了改善与提升Lustre文件系统性能的策略与方法。
能说,在文件系统的主要性能指标方面,Lustre都大幅的超越对手(GoogleFS是单个公司的产品,无法加入比较),实现了可靠性的,可用性的,可扩展性的,可管理性的,高性能的,海量的,分布式的数据存储,并且能够按照应用需求的不同提供不同的服务,如不同的应用、不同的客户端环境、不同的性能等,真正实现了按需服务。
参考文献
[1] Oracle.Lustre 1.8 Operations Manual[EB/OL].(2010.6)[2010.8] http://wiki.lustre.org/images/0/09/821-0035_v1.3.pdf
[2] 余寅辉,余镇危,杨传栋等.SAN存储系统的性能分析模型[J].计算机工程,2007.33(10):271-273.
中国科技博览2016年14期