Releasing Locks As Early As You Can: Reducing Contention of Hotspots by Violating Two-Phase Locking (Extended Version)

03/17/2021
by   Zhihan Guo, et al.
0

Hotspots, a small set of tuples frequently read/written by a large number of transactions, cause contention in a concurrency control protocol. While a hotspot may comprise only a small fraction of a transaction's execution time, conventional strict two-phase locking allows a transaction to release lock only after the transaction completes, which leaves significant parallelism unexploited. Ideally, a concurrency control protocol serializes transactions only for the duration of the hotspots, rather than the duration of transactions. We observe that exploiting such parallelism requires violating two-phase locking. In this paper, we propose Bamboo, a new concurrency control protocol that can enable such parallelism by modifying the conventional two-phase locking, while maintaining the same guarantees in correctness. We thoroughly analyzed the effect of cascading aborts involved in reading uncommitted data and discussed optimizations that can be applied to further improve the performance. Our evaluation on TPC-C shows a performance improvement up to 4x compared to the best of pessimistic and optimistic baseline protocols. On synthetic workloads that contain a single hotspot, Bamboo achieves a speedup up to 19x over baselines.

READ FULL TEXT

page 1

page 10

page 11

research
10/03/2018

Improving High Contention OLTP Performance via Transaction Scheduling

Research in transaction processing has made significant progress in impr...
research
03/30/2023

Lockless Blockchain Sharding with Multiversion Control

Sharding is used to address the performance and scalability issues of th...
research
07/06/2022

C5: Cloned Concurrency Control that Always Keeps Up

Asynchronously replicated primary-backup databases are commonly deployed...
research
02/16/2023

TransEdge: Supporting Efficient Read Queries Across Untrusted Edge Nodes

We propose Transactional Edge (TransEdge), a distributed transaction pro...
research
08/02/2018

Multi-Shot Distributed Transaction Commit (Extended Version)

Atomic Commit Problem (ACP) is a single-shot agreement problem similar t...
research
09/24/2020

An Analysis of Concurrency Control Protocols for In-Memory Databases with CCBench (Extended Version)

This paper presents yet another concurrency control analysis platform, C...
research
05/23/2023

NCC: Natural Concurrency Control for Strictly Serializable Datastores by Avoiding the Timestamp-Inversion Pitfall

Strictly serializable datastores greatly simplify the development of cor...

Please sign up or login with your details

Forgot password? Click here to reset