Decentralizing MVCC by Leveraging Visibility
Abstract
Multiversion Concurrency Control (MVCC) is a widely adopted concurrency control mechanism in database systems, which usually utilizes timestamps to resolve conflicts between transactions. However, centralized allocation of timestamps is a potential bottleneck for parallel transaction management. This bottleneck is becoming increasingly visible with the rapidly growing degree of parallelism of today's computing platforms. This paper introduces Visibility based Concurrency Control (ViCC), a series of CC mechanisms that allow transactions to determine their timestamps autonomously, without relying on centralized coordination. As such, ViCC can scale well, rendering it suitable for various multicore and MPP platforms. Extensive experiments are conducted to demonstrate its advantage over existing approaches.
- Publication:
-
arXiv e-prints
- Pub Date:
- April 2017
- DOI:
- 10.48550/arXiv.1704.01355
- arXiv:
- arXiv:1704.01355
- Bibcode:
- 2017arXiv170401355Z
- Keywords:
-
- Computer Science - Databases
- E-Print:
- The previous version of the paper it entitled "Posterior Snapshot Isolation". This new version made the following improvement: 1. we hope that this verion is easier to follow. 2. we extended the CC mechanism to support serializability