Abstract

Due to a notably higher cost per bit of storage capacity, NAND flash memory solid state drives (SSDs) are not expected to completely replace hard disk drives (HDDs) in the near future. Using SSDs as a cache for HDDs, however, proved very effective in increasing the performance of storage systems. The performance increase depends strongly on both the SSD cache design and the workload applied to the storage system. However, distinct parts of the data may exhibit significantly different access patterns that potentially change rapidly and unpredictably over time. This particularly applies to complex dynamic systems, such as virtualized environments. Existing SSD cache architectures are not able to exploit such differences in access patterns, as they only use a single cache design, even when adapting certain cache parameters.In this paper, we propose a novel generic architecture for adaptive block-level SSD caches that simultaneously employs multiple SSD caches with complementary designs. The goal is to use for each kind of access pattern the SSD cache design that fits the pattern best. Results of our experimental evaluation show that the proposed SSD cache architecture adapts to different workloads well. For a broad range of workloads, it provides an overall throughput that is comparable to the respective best single cache design, whereas it is able to outperform these cache designs for superimposed mixed workloads and workloads with changing characteristics.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call