Single-version concurrency control suits cloud transactions better
The Case for Single-Version Concurrency Control in the Cloud
Databases
Summary
Many modern databases use a method called multi-version concurrency control (MVCC) to handle multiple users accessing data at the same time. The authors explain that in cloud computing, where database tasks are split between different systems, the usual advantages of MVCC are less important. They argue that a simpler method called single-version concurrency control (SVCC) actually works better in cloud setups because it is lighter and more efficient. The authors suggest rethinking how cloud databases are built and provide ideas for future research based on SVCC.
What this means in practice
- •For cloud database engineers: Build cloud transaction engines that use simpler concurrency control to improve efficiency and reduce overhead compared to multi-version methods.
- •For enterprise system architects: Design hybrid transactional and analytical processing architectures that decouple workloads using single-version concurrency control for better cloud performance.
A position paper. It proposes an approach and reports no results.
Authors
Lam-Duy Nguyen, Gabriel Haas, Muhammad El-Hindi, Viktor Leis, Philip A. Bernstein
Abstract
Multi-version concurrency control (MVCC) has been the dominant concurrency protocol in modern database management systems (DBMSs). However, cloud-native HTAP architectures shift many of MVCC's traditional advantages from the primary transaction engine to the deployment architecture. Now, transactional and analytical processing are decoupled into loosely synchronized engines, while cloud deployment primitives provide the workload isolation required for this design. In this paper, we challenge the status quo, arguing that single-version concurrency control (SVCC) is better suited to cloud transaction processing than MVCC. Through a systematic analysis of MVCC's limitations, we show that SVCC avoids these shortcomings through a more lightweight and efficient design. Beyond arguing for a lighter transaction processing, we use this SVCC effort as a blueprint to advocate for a broader rethinking of cloud-native architectures and to outline a research roadmap to shape next-generation DBMSs.