We use cookies to improve your experience with our site.
王盈, 贾文庆, 蒋德钧, 熊劲. 非易失性内存文件系统调研[J]. 计算机科学技术学报, 2023, 38(2): 348-372. DOI: 10.1007/s11390-023-1054-3
引用本文: 王盈, 贾文庆, 蒋德钧, 熊劲. 非易失性内存文件系统调研[J]. 计算机科学技术学报, 2023, 38(2): 348-372. DOI: 10.1007/s11390-023-1054-3
Wang Y, Jia WQ, Jiang DJ et al. A survey of non-volatile main memory file systems. JOURNAL OF COMPUTER SCIENCE AND TECHNOLOGY 38(2): 348−372 Mar. 2023. DOI: 10.1007/s11390-023-1054-3.
Citation: Wang Y, Jia WQ, Jiang DJ et al. A survey of non-volatile main memory file systems. JOURNAL OF COMPUTER SCIENCE AND TECHNOLOGY 38(2): 348−372 Mar. 2023. DOI: 10.1007/s11390-023-1054-3.

非易失性内存文件系统调研

A Survey of Non-Volatile Main Memory File Systems

  • 摘要:
    研究背景 新型非易失性存储器件(Non-Volatile Memory,NVM)支持字节寻址并且具有持久化的特性,可以作为内存级存储设备(Non-Volatile Main Memory,NVMM)提升文件系统的性能。传统的文件系统基于慢速的块设备设计,使用复杂的软件栈优化性能,不能充分发挥NVMM的性能。最近的很多工作根据NVMM的特性设计文件系统,然而它们只关注于单方面的设计,没有全方位的考虑在NVMM中建立文件系统中遇到的问题。
    目的 调研现有NVMM文件系统使用的技术,通过理论和实验结果分析现有技术的优缺点,并给出建立高性能NVMM文件系统的建议。
    方法 我们首先讨论了直接将NVMM作为存储设备应用在传统文件中带来的问题,然后调研了30个NVMM文件系统,从技术上对软件开销、扩展性、宕机一致性、数据保护、多介质存储等多个方面进行分析,并通过实验验证分析结果。
    结果 给出了建立高性能NVMM文件系统的一些结论和建议。
    结论 低延迟、支持字节寻址的非易失性内存改变了存储设备的层级,同时为提高文件系统性能提供可能性。在本篇论文中,我们分析了建立高性能NVMM文件系统遇到的问题,从减少软件开销、提高扩展性、保证宕机一致性、保护数据和支持多介质存储等多个角度分析现有技术并给出建议:在减少软件开销方面,我们建议缩短IO栈、建立NVMM感知的缓存、根据不同场景使用用户态文件系统或内核文件系统并建立NVMM友好的索引;在提高扩展性方面,我们建议提高VFS的扩展性,在文件系统中使用细粒度的锁、支持高并发的索引;在保证文件系统宕机一致性方面,我们建议在不同的情况下使用不同的技术,如保证元数据的一致性时使用日志、保证文件数据的一致性时使用COW等;在保护数据及NVMM耐用性方面,我们建议使用Intel Memory Protection Keys (MPK)技术以及通过校验码来保护数据,同时NVMM的耐用性在设计文件系统时也需要考虑;在支持多介质存储时,我们建议小粒度数据、同步或者“热”写等写入到快速的NVMM上,而且根据数据冷热进行迁移对于多介质存储是必要的。

     

    Abstract: Non-volatile memories (NVMs) provide lower latency and higher bandwidth than block devices. Besides, NVMs are byte-addressable and provide persistence that can be used as memory-level storage devices (non-volatile main memory, NVMM). These features change storage hierarchy and allow CPU to access persistent data using load/store instructions. Thus, we can directly build a file system on NVMM. However, traditional file systems are designed based on slow block devices. They use a deep and complex software stack to optimize file system performance. This design results in software overhead being the dominant factor affecting NVMM file systems. Besides, scalability, crash consistency, data protection, and cross-media storage should be reconsidered in NVMM file systems. We survey existing work on optimizing NVMM file systems. First, we analyze the problems when directly using traditional file systems on NVMM, including heavy software overhead, limited scalability, inappropriate consistency guarantee techniques, etc. Second, we summarize the technique of 30 typical NVMM file systems and analyze their advantages and disadvantages. Finally, we provide a few suggestions for designing a high-performance NVMM file system based on real hardware Optane DC persistent memory module. Specifically, we suggest applying various techniques to reduce software overheads, improving the scalability of virtual file system (VFS), adopting highly-concurrent data structures (e.g., lock and index), using memory protection keys (MPK) for data protection, and carefully designing data placement/migration for cross-media file system.

     

/

返回文章
返回