🤖 AI Summary
This work addresses the tight coupling between concurrency control (CC) and execution or storage layers in existing decoupled database systems, which leads to resource misallocation, limited scalability, and performance bottlenecks. To overcome these limitations, the paper proposes Concurrency Control as a Service (CCaaS), the first architecture that fully decouples CC into an independent service layer, establishing a three-tier design—execution, CC, and storage—that enables elastic scaling and independent upgrades of each layer. Key innovations include a sharded multi-write optimistic concurrency control (SM-OCC) algorithm, an asynchronous log push-down mechanism, and deterministic conflict resolution, collectively reducing communication overhead and latency. Experimental results demonstrate that CCaaS achieves 1.02–3.11× higher throughput and 1.11–2.75× lower latency compared to state-of-the-art decoupled databases, while significantly improving scalability and development agility.
📝 Abstract
Existing disaggregated databases separate execution and storage layers, enabling independent and elastic scaling of resources. In most cases, this design makes transaction concurrency control (CC) a critical bottleneck, which demands significant computing resources for concurrent conflict management and struggles to scale due to the coordination overhead for concurrent conflict resolution. Coupling CC with execution or storage limits performance and elasticity, as CC's resource needs do not align with the free scaling of the transaction execution layer or the storage-bound data layer. This paper proposes Concurrency Control as a Service (CCaaS), which decouples CC from databases, building an execution-CC-storage three-layer decoupled database, allowing independent scaling and upgrades for improved elasticity, resource utilization, and development agility. However, adding a new layer increases latency due to the shift in communication from hardware to network. To address this, we propose a Sharded Multi-Write OCC (SM-OCC) algorithm with an asynchronous log push-down mechanism to minimize network communications overhead and transaction latency. Additionally, we implement a multi-write architecture with a deterministic conflict resolution method to reduce coordination overhead in the CC layer, thereby improving scalability. CCaaS is designed to be connected by a variety of execution and storage engines. Existing disaggregated databases can be revolutionized with CCaaS to achieve high elasticity, scalability, and high performance. Results show that CCaaS achieves 1.02-3.11X higher throughput and 1.11-2.75X lower latency than SoTA disaggregated databases.