An Analysis of Concurrency Control Protocols for In-Memory Databases with CCBench (Extended Version)
Takayuki Tanabe, Takashi Hoshino, Hideyuki Kawashima, Jun Nemoto,, Masahiro Tanaka, Osamu Tatebe

TL;DR
This paper introduces CCBench, a comprehensive platform for analyzing concurrency control protocols in in-memory databases, revealing nuanced performance insights across various workloads and optimizations.
Contribution
The paper provides a detailed analysis of seven protocols and optimization methods using CCBench, highlighting new performance behaviors and proposing two novel optimization techniques.
Findings
Optimistic protocols degrade with increased cardinality on read-only workloads.
Silo can outperform TicToc with invisible reads in some write workloads.
Conflict handling strategies depend on workload conditions.
Abstract
This paper presents yet another concurrency control analysis platform, CCBench. CCBench supports seven protocols (Silo, TicToc, MOCC, Cicada, SI, SI with latch-free SSN, 2PL) and seven versatile optimization methods and enables the configuration of seven workload parameters. We analyzed the protocols and optimization methods using various workload parameters and a thread count of 224. Previous studies focused on thread scalability and did not explore the space analyzed here. We classified the optimization methods on the basis of three performance factors: CPU cache, delay on conflict, and version lifetime. Analyses using CCBench and 224 threads, produced six insights. (I1) The performance of optimistic concurrency control protocol for a read only workload rapidly degrades as cardinality increases even without L3 cache misses. (I2) Silo can outperform TicToc for some write-intensive…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDistributed systems and fault tolerance · Advanced Data Storage Technologies · Parallel Computing and Optimization Techniques
