THRCache: DRAM-NVM Multi-level Cache with Thresholded Heterogeneous Random Choices
摘要
Caching is essential for accelerating data access, balancing storage cluster load and improving quality of service. However, single-node cache may become a bottleneck as the storage system scales up. Distributed caching is proposed to provide caching services for large-scale storage cluster. However, existed cache mechanisms based on cache partitioning or cache replication may lead to load imbalance and high coherency overhead. We propose THRCache, a multi-level heterogeneous distributed cache mechanism which combines the speed of DRAM with the high-capacity of NVM to cache more easily accessible data. THRCache implements cache allocation for different cache layers by independent hash functions, routes query with a threshold random heterogeneous selection, and introduces a prefetching mechanism based on data access correlation. In this paper, we implement a prototype of THRCache and demonstrate through experiments that THRCache has higher cache hit rate and throughput than existed distributed cache architectures under different workloads.