近日,信息学部计算机与信息学院分布式计算与系统研究所在非易失性内存文件系统研究方面取得新进展,设计实现了一种新型非易失性内存文件系统FlatFS+。FlatFS+在文件系统的命名空间层面充分挖掘非易失性内存硬件的潜在优势,提升了文件元数据的性能。
非易失性内存作为下一代信息存储的核心技术,既具有类似 DRAM 内存的性能与硬件特征,如纳秒级别的访问延迟、高内存带宽(>10GB/s)、支持内存控制器字节寻址,又具备类似于硬盘所支持的数据持久性存储,其优异的硬件特性为构建面向海量化数据密集型应用的高性能文件系统提供了新的机遇,已引起学术界和工业界的广泛关注,并成为当前存储领域的研究热点。
然而,传统基于目录树的文件系统命名空间架构在高速持久性内存设备上主要存在两方面的性能问题:(1)高软件延迟的文件路径行走;(2)低效递归的命名空间目录树遍历。这两个问题严重制约了文件元数据操作在高速非易失性内存设备上的性能。
图 1. 非易失性内存和FlatFS+文件系统架构
论文工作聚焦上述两个关键问题,充分结合非易失性内存字节寻址、低延迟、高带宽的设备特性,以软硬件适配为技术途径,首次将平坦式命名空间引入到高性能文件系统设计中,从文件系统命名空间的查询优化方法、系统结构模型、数据存取机制等层面,提出了若干关键性理论和技术,设计实现了一种新型非易失性内存文件系统FlatFS+。FlatFS+在文件系统的命名空间层面充分挖掘非易失性内存硬件的潜在优势,从而提升文件元数据的性能。
在命名空间查询方法方面,本研究利用非易失性内存极低延迟特性,构建了一种基于全路径的文件路径行走模型,形式化地证明了全路径行走模型与传统迭代式路径行走模型的功能等价性。在此基础上,建立了多路径行走模型协调机制,实现快速化的命名空间文件查询访问。
在命名空间组织结构方面,本研究利用平坦式的路径组织方法,构建了内存访问模式匹配的命名空间结构,并对该结构的空间开销给出了严格的计算证明。另外,本研究提出两种新型的树操作原语,设计了一种批量操作友好的索引树结构,突破了平坦化命名空间批量操作慢的性能瓶颈。
在命名空间存取机制方面,本研究剖析非易失性内存字节寻址特征,提出了一种压缩式路径名存储方法。该方法包括一种段式的压缩路径存储布局,并结合前后缀数据预取,建立写优化的命名空间数据更新技术,实现设备读写粒度感知的命名空间数据存取机制。
图2. Git和PSearchy的实验测试结果
论文实验对比了两种商用文件系统和五种研究型文件系统,采用标准的基准测试程序集(如Filebench,FxMark)和真实的应用程序(如版本控制工具Git,大数据仓库Hive,文件索引软件PSearchy)。FlatFS+在文件路径解析的效率、扩展性,目录文件遍历等方面均有较大的提升,实验结果表明FlatFS+最多能提升4倍的文件元数据操作性能。
相关成果“Exploiting Flat Namespace to Improve File System Metadata Performance on Ultra-fast, Byte-addressable NVMs”被计算机存储领域的国际顶级刊物《ACM Transactions on Storage》(简称ACM ToS)以长文形式录用。蔡淼博士是该论文的第一作者,叶保留教授为通讯作者。
本研究工作得到国家自然科学基金重点项目的支持。论文网址:doi.acm.org?doi=3620673