Modern storage systems predominantly use flash-based SSDs as a cache layer due to their favorable performance and cost efficiency. However, in tiny-object workloads, existing flash cache designs still suffer from high write amplification. Even when deploying advanced log-structured flash devices (e.g., Zoned Namespace SSDs and Flexible Data Placement SSDs) with low device-level write amplification, application-level write amplification still dominates. This work proposes Nemo, which enhances set-associative cache design by increasing hash collision probability to improve set fill rate, thereby reducing application-level write amplification. To satisfy caching requirements, including high memory efficiency and low miss ratio, we introduce a bloom filter-based indexing mechanism that significantly reduces memory overhead, and adopt a hybrid hotness tracking to achieve low miss ratio without losing memory efficiency. Experimental results show that Nemo simultaneously achieves three key objectives for flash cache: low write amplification, high memory efficiency, and low miss ratio.
翻译:现代存储系统主要采用基于闪存的固态硬盘作为缓存层,这得益于其优越的性能和成本效益。然而,在微小对象工作负载中,现有的闪存缓存设计仍面临高写入放大的问题。即使部署具有低设备级写入放大的先进日志结构闪存设备(例如分区命名空间固态硬盘和灵活数据放置固态硬盘),应用级写入放大仍然占主导地位。本文提出Nemo,它通过提高哈希冲突概率以提升集合填充率来增强组相联缓存设计,从而降低应用级写入放大。为满足高内存效率和低缺失率等缓存需求,我们引入了一种基于布隆过滤器的索引机制,显著降低了内存开销,并采用混合热度跟踪方法,在不损失内存效率的前提下实现低缺失率。实验结果表明,Nemo同时实现了闪存缓存的三个关键目标:低写入放大、高内存效率和低缺失率。