Accelerating Cloud-Native Databases with Distributed PMem Stores - Sun, Jason; Ma, Haoxiang; Zhang, Li; Liu, Huicong; Shi, Haiyang; Luo, Shangyu; Wu, Kai; Bruhwiler, Kevin; Zhu, Cheng; Nie, Yuanyuan; Chen, Jianjun; Zhang, Lei; et al. (Data engineering, 2023)
Relational databases have gone through a phase of architectural transition from a monolithic to a distributed architecture to take full advantage of cloud technology. These distributed databases can leverage remote storage to maintain larger amounts of data than monolithic databases at the cost of increased latency. At ByteDance, we have built a distributed database called veDB based on the popular compute-storage separation architecture, however we have observed the system is unable to provide both low latency and high throughput required by some business critical applications, such as batched order processing.In this paper we present our novel approaches to tackle this problem. We have modified our system's storage to utilize persistent memory (PMem) coupled with a remote direct memory access (RDMA) network to reduce read/write latency and increase the throughput. We also propose a query push-down framework to push partial computations to the PMem storage layer to accelerate analytical queries and reduce the impact of the transaction workload in the computation layer. Our experiments show that our methods improve the throughput by up to 1.5× and reduce latency by up to 20× for standard benchmarks and real-world applications.