周恩强,董 勇,张 伟,卢宇彤
(国防科学技术大学高性能计算国家重点实验室,湖南 长沙 410073)
近年来对象存储架构在高性能计算领域被广泛应用,在全球计算能力排名Top500中靠前的系统中大多部署了基于对象存储架构的并行文件系统,如Lustre 和Panasas[1,2.。对象存储的大文件并行访问性能优异,能够满足超大规模并行条件下的文件读写速度和存储容量需求,因此其成为千万亿次超级计算系统解决大规模可扩展输入和输出I/O(Input/Output)问题的最佳选择。
一般认为,HPC 系统中大文件占用空间和I/O 总量的比重大,小文件占用空间和I/O 总量的比重小,但文件数量多。随着高性能计算机应用于更多的科学领域,高性能计算系统中的文件I/O的需求呈多样化特征,小文件的访问需求逐渐增多[3]。对象存储体系结构在小文件访问方面存在局限性[4],小文件的读延迟较大,导致很多应用场景下文件访问性能弱于本地文件系统和其他网络文件系统。例如,较大规模的数据分析和海量数据管理过程中的备份和归档操作等。因此,如何提高小文件大规模并发读性能是当前对象存储系统的热点研究问题之一。
本文针对典型对象存储并行文件系统中小文件读访问的性能问题,分析了小文件访问过程的主要开销构成,设计并实现了面向小文件的并行文件系统服务端缓存机制,采用缓存专用和关联文件预读的方法,提高小文件读操作的缓存命中率,达到优化小文件访问性能的目的。……