论文部分内容阅读
随着计算机信息技术的迅速发展,对海量数据的存储及访问需求都呈几何级数爆炸式增长,也对数据的存储及访问方式提出了更高的要求。基于对象存储Lustre文件系统结合了传统文件系统的优点,将对象存储服务器与元数据服务器分离,实现了分布式环境下文件的并行访问,使集群系统中文件的I/O性能得到极大的提高。因此,研究Lustre文件系统的关键技术,寻求更加高效的文件访问效率,进一步提高在不同的复杂环境下的适应性显得尤为必要。
论文按照“研究-设计-实现-验证”的思路,以开源的Lustre文件系统作为主要研究对象,主要完成了以下工作:首先,结合Lustre官方的操作手册,对源代码进行大量的阅读,分析其体系结构和使用的关键技术;其次,在代码阅读的基础上,重点对Lustre现有的缓存工作机制进行分析,从中得出在大规模数据访问、特别是针对I/O密集型的共享资源访问的情况下,为保证数据一致性而进行的缓存刷新会带来很大的网络吞吐量和更新延迟的问题,进而采用了一种协作式的缓存更新策略对其进行改进,并通过实验证明了改进的Lusrre客户端缓存一致性策略进一步提高了文件系统的读性能;最后,Lustre文件系统在设计之初重点针对大文件采用数据分片实现数据并行存取等技术来提高性能,但在实际的应用中,数据访问并不可能完全是由大块的数据组成,而是混合着大量的小块文件,此时Lustre的数据访问方式反而可能会造成性能瓶颈,论文采用了在客户端增加专门针对小文件数据的缓存,对小文件进行堆积和延迟提交的方式减少网络I/O次数,进行写性能的优化,并采用矩阵运算的算法实现小文件缓存的置换,提高缓存的命中率,从而提高了文件读性能。
论文的研究工作及实验结果表明,针对复杂环境下Lustre文件系统可能遇到的性能瓶颈问题,通过对缓存机制进行研究和改进,可以有效的提高Lustre的并行I/O性能。