BCC: Reducing false aborts in optimistic concurrency control with low cost for in memory databases

Yuan Yuan, Kaibo Wang, Rubao Lee, Xiaoning Ding, Jing Xing, Spyros Blanas, Xiaodong Zhang

Research output: Contribution to journalConference articlepeer-review

37 Scopus citations

Abstract

The Optimistic Concurrency Control (OCC) method has been commonly used for in-memory databases to ensure transaction serializability - a transaction will be aborted if its read set has been changed during execution. This simple criterion to abort transactions causes a large proportion of false positives, leading to excessive transaction aborts. Transactions aborted false-positively (i.e. false aborts) waste system resources and can significantly degrade system throughput (as much as 3.68x based on our experiments) when data contention is intensive. Modern in-memory databases run on systems with increasingly parallel hardware and handle workloads with growing concurrency. They must efficiently deal with data contention in the presence of greater concurrency by minimizing false aborts. This paper presents a new concurrency control method named Balanced Concurrency Control (BCC) which aborts transactions more carefully than OCC does. BCC detects data dependency patterns which can more reliably indicate unserializable transactions than the criterion used in OCC. The paper studies the design options and implementation techniques that can effectively detect data contention by identifying dependency patterns with low overhead. To test the performance of BCC, we have implemented it in Silo and compared its performance against that of the vanilla Silo system with OCC and two-phase locking (2PL). Our extensive experiments with TPC-Wlike, TPC-C-like and YCSB workloads demonstrate that when data contention is intensive, BCC can increase transaction throughput by more than 3x versus OCC and more than 2x versus 2PL; meanwhile, BCC has comparable performance with OCC for workloads with low data contention.

Original languageEnglish (US)
Pages (from-to)504-515
Number of pages12
JournalProceedings of the VLDB Endowment
Volume9
Issue number6
DOIs
StatePublished - 2016
Event42nd International Conference on Very Large Data Bases, VLDB 2016 - New Delhi, India
Duration: Sep 5 2016Sep 9 2016

All Science Journal Classification (ASJC) codes

  • Computer Science (miscellaneous)
  • General Computer Science

Fingerprint

Dive into the research topics of 'BCC: Reducing false aborts in optimistic concurrency control with low cost for in memory databases'. Together they form a unique fingerprint.

Cite this