信息存储系统教育部重点实验室

博士生亓文杰的论文被ICCD 2023录用


新兴的分区命名空间(ZNS) SSD为主机提供细粒度的、性能可预测的存储管理。ZNS SSD将地址空间划分为多个Zone,每个Zone必须按顺序写入,且不能被覆盖。然而,写约束导致频繁地对文件元数据进行小的修改,以记录更新数据块的最新逻辑块地址,从而增加了fsync()系统调用的开销。通过综合分析了真实ZNS SSD上fsync的元数据开销,发现:(1)大多数元数据块的更新大小(如几十字节)远远小于区域的IO单元(如4 KiB),频繁的fsync会导致严重的元数据写放大;(2)元数据块IO显著增加了fsync延迟,降低了工作负载的吞吐量。

实验室博士生亓文杰在谭支鹏教授的指导下,设计了Byte-loggable zone,这是ZNS的一个新的扩展,它基于NVMe PMR接口和Zone的持久性写缓存,以字节粒度而不是块粒度执行Append操作。基于Byte-loggable zone,为ZNS SSD提出了一种高性能内核文件系统BlzFS。首先,BlzFS通过更新位图来维护元数据块的更新范围。其次,BlzFS通过元数据更新日志机制确保元数据的持久性和一致性,该机制使用专用接口将元数据块的部分更新记录到设备的Byte-loggable zone。最后,BlzFS通过重放元数据更新日志和扫描最近分配的元数据块列表来恢复元数据一致性。在评估中,与原始的ZNS存储系统相比,BlzFS的元数据写流量减少了33.5% ~ 96.1%,吞吐量提高了1.37倍 ~ 1.91倍。

该研究成果以Regular Paper “BlzFS: Crash Consistent Log-structured File System Based on Byte-loggable Zone for ZNS SSD” 于2023年8月接收于2023 IEEE International Conference on Computer Design (ICCD-2023)。


图1 BlzFS元数据同步路径

图2 OLTP负载下性能和写放大对比

注:本文为原创,如转载请注明出处。

分享文章

Share