CalmWPC: A buffer management to calm down write performance cliff for NAND flash-based storage systems

CalmWPC: A buffer management to calm down write performance cliff for NAND flash-based storage systems
复制标题

DOI:
10.1016/j.future.2018.08.014
复制
发表时间:
2019-01
期刊:
Future Gener. Comput. Syst.
影响因子:
--
通讯作者:
Hui Sun;Guodong Chen;Jianzhong Huang;X. Qin;Weisong Shi
Hui Sun;Guodong Chen;Jianzhong Huang;X. Qin;Weisong Shi
中科院分区:
其他
文献类型:
--
作者:
Hui Sun;Guodong Chen;Jianzhong Huang;X. Qin;Weisong Shi

文献摘要

相似文献

基于NAND闪存的固态硬盘(即ssd)在大型存储系统中得到了广泛的应用。然而,NAND闪存具有非对称读写性能、高擦除延迟和有限的程序/擦除周期(P/Es)的特点。在随机写密集型工作负载下,SSD内部的垃圾收集(即GC)进程会导致写性能悬崖,这会导致I/O访问的高延迟并降低SSD的生命周期。在实时事务性应用程序中,如此大的写性能悬崖会影响I/O请求的响应时间,从而导致实时应用程序出现严重的严重错误。为了解决这个问题,我们提出了一个名为CalmWPC的缓冲区管理策略,以平息ssdwrite的性能提升。CalmWPC无缝集成了基于数据集群的数据管理、基于历史访问的预测算法和语义指纹数据库。预测算法检查未来的数据集群活动,同时根据其历史写操作对集群进行分类。指纹数据库在缓冲区和NAND闪存之间存储用于写入/更新的语义消息。有了指纹数据库,CalmWPC就可以实时计算块中无效数据页的数量。当更新页面的数量达到预定义的阈值时,CalmWPC将数据集群刷新到闪存中。我们的CalmWPC优化了随机写工作负载下GC期间的写性能悬崖。实验结果表明,CalmWPC能够降低写性能悬崖,提高用户I/ o的平均延迟,并优化写放大。以Financial1为例,与LRU和CFLRU相比,CalmWPC平均降低了60.9%和60.0%的写性能悬崖。CalmWPC还使LRU和CFLRU的响应时间平均分别缩短了69.4%和70.1%。
NAND Flash-based solid state disks (i.e.,SSDs) are widely applied in large-scale storage systems. However, NAND Flash is featured with the asymmetric read and write performance, high erase latency, and the limited number of program/erase cycles (P/Es). Under random write-intensive workloads, a garbage collection (i.e.,GC) process inside SSDs causes write performance cliff, which causes high latency for I/O access and degrades SSD lifetime. In real-time transactional applications, such large write performance cliff affects the response time of I/O requests, thereby leading to serious critical errors in real-time applications.To handle this issue, we propose a buffer management strategy called CalmWPC tocalmdown SSDwriteperformancecliff. CalmWPC seamlessly integrates a data cluster-based data management, a historical access-based prediction algorithm, a semantic fingerprint database. The prediction algorithm checks the future data-cluster activity while classifying the cluster based on its historical write operations. The fingerprint database stores semantic messages for write/update between the buffer and NAND Flash memory. With the fingerprint database in place, CalmWPC calculates the number of invalid data pages in a block in real time. CalmWPC flushes the data cluster into flash memory when the number of update pages reaches a predefined threshold. Our CalmWPC optimizes write performance cliff during GC under random-write workloads.Experimental results reveal that CalmWPC is able to reduce write performance cliff, improve the average latency of user I/Os, and optimize write amplification. Take Financial1 as an example, CalmWPC reduces the write performance cliff by averages of 60.9% and 60.0% compared with LRU and CFLRU. CalmWPC also shortens the response time of LRU and CFLRU by averages of 69.4% and 70.1%, respectively.