A Shared Dynamic Cache Technology in Distributed Block Storage System

  • Chao Yin, Tongfang Li, Sihao Yuan, Xiaoping Qu, Hongbo Zhou

Abstract

Driven by cloud computing and big data, distributed block storage system is becoming more and more important. According to the characteristics of the distributed environment, people usually add cache on the distributed block storage system to provide better services for improving the performance of the distributed block storage system. We have created a shared dynamic cache named SSDC which used the storage device solid state disk (SSD in short) to improve the performance. The shared dynamic cache adds a cache layer for the whole distributed block storage system, which is shared by all data nodes. It stores a lot of hot data and requests hit in the cache. After the cache data is calculated in the same way, it is stored in different cache nodes according to the specified rules. We have developed a dynamic algorithm named DAQ to manage the cache data after the cache data is divided into specified cache nodes. According to the characteristics of distributed block storage system, the cache data is divided into several different data sets according to the specified attributes. DAQ can dynamically adjust the available space of each queue, which can manage each data set. At the same time, a knockout upper limit and a knockout lower limit are set for higher performance. They can change dynamically according to the access situation. When the cache space exceeds the threshold, the data set with light load is preferred to be eliminated. The redundant space of data nodes is used to add the function of log backup to ensure the original data reliability of the system. The system prototype is based on the open source distributed block storage system sheepdog. The test results show that the technology provides 20% to 270% performance improvement for different data sets.

Published
2020-10-31
How to Cite
Chao Yin, Tongfang Li, Sihao Yuan, Xiaoping Qu, Hongbo Zhou. (2020). A Shared Dynamic Cache Technology in Distributed Block Storage System. Design Engineering, 487 - 498. https://doi.org/10.17762/de.vi.813
Section
Articles