FAST 2023 Paper 分布式元数据论文阅读笔记整理
问题
非易失性主存储器(NVMM)具有与DRAM类似的低访问延迟和字节可寻址性,同时实现数据的非易失性。但存在以下缺点:(1)延迟高于DRAM,(2)带宽低于DRAM,(3)对NUMA效应高度敏感,(4)更大的访问粒度(即256字节XPLine)。NVMM最大的弱点是容量有限,因此将NVMM与传统存储设备结合使用,可以利用NVMM的优势,同时使用大容量块存储设备。
之前的研究试图开发单一的文件系统,同时管理NVMM和块设备存储,并根据I/O特性确定哪个设备为读写请求提供服务[24,39],但存在局限性:
-
用于分层存储设备的单个文件系统,如Ziggurat[39]和Strata[24],很难针对多种块设备类型的各种组合进行定制。
-
从头开始开发文件系统需要花费大量时间和精力才能实现成熟和稳定的文件系统。此外,管理多层存储设备会增加更多的复杂性。
-
从部署的角度来看,单个文件系统会造成一些不便,因为忽略了现有的文件系统。为了实际部署这些系统,必须首先对传统文件系统管理的大量文件进行备份,然后格式化新的NVMM和磁盘设置,然后将备份复制回来。
本文方法
本文提出了可堆叠的持久内存文件系统(SPFS),部署在块设备文件系统之上,只需相对少量NVMM,将NVMM作为块设备文件系统的持久回写缓存,减少持久化的开销。
-
包括四个关键组件,如图1(b)所示:(1)同步点分析器,确定哪些块由SPFS处理并放置在NVMM中,哪些块由较低的文件系统处理并放置在传统存储中,(2)基于哈希的数据块管理(extent table),(3)基于哈希的自由空间管理(block bitmap table),(4)基于哈希值的名称解析(name2inode table)。
-
可以堆叠在针对磁盘优化的文件系统上,通过吸收NVMM中频繁的小同步写入来提高I/O性能,同时利用底层对磁盘优化文件系统的VFS缓存进行大型或非同步写入。
-
轻量级,只管理NVMM而不管理磁盘或VFS缓存。SPFS使用简单高效的动态哈希表管理所有文件系统元数据和扩展数据块。设计了一种新的数据块哈希算法,该算法具有快速插入和快速扫描性能。
实验表明,SPFS+EXT4、SPFS+XFS和SPFS+F2FS将低级文件系统的性能提高了至多9.9倍。
总结
针对同时使用NVMM和块存储的文件系统,使用单个文件系统管理所有空间有局限性:难以扩展到多种块设备类型,系统复杂性,部署开销。本文提出可堆叠的持久内存文件系统(SPFS),部署在块设备文件系统之上,通过NVMM吸收频繁的小同步写入来提高I/O性能,同时利用底层对磁盘优化文件系统的VFS缓存进行大型或非同步写入,只管理NVMM而不管理磁盘或VFS缓存。包括四个关键组件:(1)同步点分析器,确定块哪个系统管理,(2)基于哈希的数据块管理(extent table),(3)基于哈希的自由空间管理(block bitmap table),(4)基于哈希值的名称解析(name2inode table)。