本文档属于类型a,即报告了一项原创性研究。以下是针对该研究的学术报告:
研究背景与作者信息
本文由Jiansheng Qiu、Yanqi Pan、Wen Xia、Xiaojia Huang、Wenjun Wu、Xiangyu Zou、Shiyi Li(哈尔滨工业大学深圳校区)以及Yu Hua(华中科技大学)共同完成,发表于2023年USENIX年度技术会议(USENIX Annual Technical Conference, ATC 2023),会议于2023年7月10日至12日在美国波士顿举行。该研究的主要领域为非易失性存储器(Non-Volatile Memory, NVM)文件系统,旨在解决NVM存储成本高的问题,并通过去重技术(deduplication)减少冗余数据块,从而降低存储成本。
研究背景与目标
NVM因其字节可寻址性、持久性和低延迟等特性,被认为是下一代存储介质的有力候选者。然而,其高昂的成本限制了其广泛应用。去重技术作为一种系统级数据压缩方法,通过消除冗余数据块来扩大逻辑存储空间,从而降低存储设备的摊销成本。现有的NVM文件系统去重技术未能充分利用NVM的I/O机制,导致性能瓶颈。为此,本研究提出了Light-Dedup,一种轻量级的NVM文件系统内联去重框架,旨在通过快速块级去重技术优化NVM的I/O性能。
研究流程与方法
研究分为以下几个主要步骤:
Light-Redundant-Block-Identifier (LRBI) 设计
LRBI是Light-Dedup的核心组件,用于快速识别重复数据块。它结合了非加密哈希(non-cryptographic hash)和基于推测预取(speculative prefetch)的逐字节内容比较技术。具体来说,LRBI使用xxHash(一种快速非加密哈希算法)快速识别大多数非重复块。对于具有相同哈希值的块,LRBI利用NVM的内存接口实现异步读取,并通过推测预取技术将NVM数据块预取到CPU/NVM缓冲区中,从而显著减少内容比较时的读取延迟。推测预取技术包括块内预取(in-block prefetch)和跨块预取(cross-block prefetch),以充分利用NVM I/O与CPU计算的并行性。
Light-Meta-Table (LMT) 设计
LMT是Light-Dedup的去重元数据表,用于存储去重元数据并与LRBI协作。LMT采用区域粒度(region granularity)组织,显著减少了元数据I/O放大,并提高了去重性能。每个区域包含多个连续的元数据条目,元数据条目以近乎顺序的方式分配,从而减少了NVM粗粒度访问带来的元数据I/O放大问题。此外,LMT通过牺牲1倍的额外元数据空间来避免垃圾回收开销,从而保持去重性能的稳定性。
系统实现与评估
研究团队在Linux内核5.1.0上基于NOVA文件系统实现了Light-Dedup,并对其进行了全面的性能评估。评估包括合成工作负载和真实工作负载的测试,结果表明Light-Dedup在I/O吞吐量上比现有的NVM去重文件系统提高了1.01至8.98倍。推测预取技术使Light-Dedup的性能提升了0.3%至118%,而基于区域的LMT布局将元数据读/写放大从19.35倍/9.86倍降低到6.10倍/3.43倍。
主要研究结果
1. LRBI的性能优化
LRBI通过结合非加密哈希和推测预取技术,显著减少了内容比较的延迟。实验结果显示,在单线程和8线程环境下,Light-Dedup的I/O吞吐量分别比NV-Dedup提高了1.70至4.58倍和1.05至2.28倍。推测预取技术在高重复率场景下尤其有效,例如在2 MiB I/O写入的单线程测试中,Light-Dedup的性能比未使用推测预取的版本提高了72%至118%。
LMT的元数据管理优化
LMT的区域布局显著减少了元数据I/O放大,特别是在老化文件系统中。实验数据显示,区域布局将元数据读/写放大分别从19.35倍/9.86倍降低到6.10倍/3.43倍。此外,LMT通过牺牲1倍的额外元数据空间避免了垃圾回收开销,从而保持了去重性能的稳定性。
系统整体性能提升
在真实工作负载测试中,Light-Dedup在所有场景下均表现出最佳的去重性能。例如,在复制Linux内核的场景中,Light-Dedup的吞吐量显著高于其他系统,推测预取技术在高重复率场景下尤其有效。此外,在多线程环境下,Light-Dedup的跨块预取技术(CBP)在高并发场景下表现出色,显著提高了系统的整体性能。
研究结论与意义
Light-Dedup通过结合NVM的I/O机制(如内存接口、读/写不对称性和访问粒度),提出了一种高效的NVM文件系统内联去重框架。其主要贡献包括:
1. 深入分析了NVM I/O机制对去重性能的影响,并提出了基于这些机制的最大化去重性能的方法。
2. 提出了LRBI和LMT两种关键技术,分别用于快速识别重复块和优化元数据管理。
3. 在Linux内核中实现了Light-Dedup,并对其进行了全面的性能评估,验证了其在高重复率场景下的显著性能提升。
研究亮点
1. LRBI的创新性:LRBI通过结合非加密哈希和推测预取技术,显著减少了内容比较的延迟,是NVM去重技术的重要突破。
2. LMT的区域布局:LMT的区域布局显著减少了元数据I/O放大,特别是在老化文件系统中,具有重要的实际应用价值。
3. 系统整体性能优化:Light-Dedup在高重复率场景下的性能提升显著,为NVM文件系统的去重技术提供了新的解决方案。
其他有价值的内容
研究团队还探讨了Light-Dedup在未来NVM设备和CXL(Compute Express Link)设备上的可移植性,并提出了进一步优化内存消耗的研究方向。这些内容为未来的研究提供了重要的参考和启示。
以上是对Light-Dedup研究的全面报告,详细介绍了其背景、方法、结果和意义,为相关领域的研究人员提供了重要的参考。