Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

High-performance concurrency control mechanisms for main-memory databases

Published: 01 December 2011 Publication History

Abstract

A database system optimized for in-memory storage can support much higher transaction rates than current systems. However, standard concurrency control methods used today do not scale to the high transaction rates achievable by such systems. In this paper we introduce two efficient concurrency control methods specifically designed for main-memory databases. Both use multiversioning to isolate read-only transactions from updates but differ in how atomicity is ensured: one is optimistic and one is pessimistic. To avoid expensive context switching, transactions never block during normal processing but they may have to wait before commit to ensure correct serialization ordering. We also implemented a main-memory optimized version of single-version locking. Experimental results show that while single-version locking works well when transactions are short and contention is low performance degrades under more demanding conditions. The multiversion schemes have higher overhead but are much less sensitive to hotspots and the presence of long-running transactions.

References

[1]
D. Agrawal, A. J. Bernstein, P. Gupta, S. Sengupta: Distributed Multi-Version Optimistic Concurrency Control with Reduced Rollback, Distributed Computing, 1987.
[2]
D. Agrawal, S. Sengupta: Modular Synchronization in Multiversion Databases: Version Control and Concurrency Control, SIGMOD, 1989.
[3]
Hal Berenson, Philip A. Bernstein, Jim Gray, Jim Melton, Elizabeth J. O'Neil, Patrick E. O'Neil: A Critique of ANSI SQL Isolation Levels. SIGMOD, 1995.
[4]
Philip A. Bernstein, Vassos Hadzilacos, Nathan Goodman: Concurrency Control and Recovery in Database Systems. Addison-Wesley 1987, ISBN 0-201-10715-5.
[5]
Paul M. Bober, Michael J. Carey: Multiversion Query Locking, VLDB, 1992.
[6]
Paul M. Bober, Michael J. Carey: On Mixing Queries and Transactions via Multiversion Locking, ICDE, 1992.
[7]
Mihaela A. Bornea, Orion Hodson, Sameh Elnikety, Alan Fekete: One-Copy Serializability with Snapshot Isolation under the Hood. ICDE, 2011.
[8]
Albert Burger, Vijay Kumar, Mary Lou Hines: Performance of Multiversion and Distributed Two-Phase Locking Concurrency Control Mechanisms in Distributed Databases, Information Sciences, 96(1), 1997.
[9]
Michael J. Cahill, Uwe Röhm, Alan David Fekete: Serializable Isolation for Snapshot Databases. TODS, 34(4), 2009.
[10]
IBM solidDB, information available at http://www.ibm.com/.
[11]
Michael J. Carey: Multiple Versions and the Performance of Optimistic Concurrency Control. Tech. Rep. 517, Computer Sciences Dept., Univ. of Wisconsin-Madison, 1983.
[12]
Michael J. Carey, Waleed A. Muhanna: The Performance of Multiversion Concurrency Algorithms, TODS, 4(4), 1985.
[13]
Theo Härder, Erwin Petry: Evaluation of a Multiple Version Scheme for Concurrency Control, Information Systems, 12(1), 1987.
[14]
IBM SolidDb Performance on Intel Systems, white paper at http://download.intel.com/business/software/testimonials/downloads/xeon5500/ibm.pdf.
[15]
Ryan Johnson, Ippokratis Pandis, Anastasia Ailamaki: Improving OLTP Scalability using Speculative Lock Inheritance. PVLDB, 2(1), 2009.
[16]
Vijay Kumar (Ed.): Performance of Concurrency Control Mechanisms in Centralized Database Systems. Prentice-Hall 1996, ISBN 0-13-065442-6.
[17]
H. T. Kung, John T. Robinson: On Optimistic Methods for Concurrency Control. TODS, 6(2), 1981.
[18]
Sanjay Kumar Madria, Mohammed Baseer, Vijay Kumar, Sourav S. Bhowmick: A Transaction Model and Multiversion Concurrency Control for Mobile Database Systems, Distributed and Parallel Databases, 22(2-3), 2007.
[19]
Ippokratis Pandis, Ryan Johnson, Nikos Hardavellas, Anastasia Ailamaki: Data-Oriented Transaction Execution. PVLDB, 3(1), 2010.
[20]
Christos H. Papadimitriou, Paris C. Kanellakis: On Concurrency Control by Multiple Versions, TODS, 9(1), 1984.
[21]
PostgreSQL 8.4.2 Documentation, Ch. 13 Concurrency Control, available from www.postgresql.org.
[22]
Oracle TimesTen In-Memory Database, information available at http://www.oracle.com.
[23]
SQL Server 2008 Books Online: Isolation Levels in the Database Engine, available at http://msdn.microsoft.com/en-us/library/ms189122.aspx.
[24]
Telecommunication Application Transaction Processing (TATP) Benchmark Description, available at http://tatpbenchmark.sourceforge.net/.
[25]
Robert Tarjan: Depth-First Search and Linear Graph Algorithms, SIAM J. of Computing, 1(2), 1972.
[26]
Alexander Thomasian: Concurrecy control: Methods, Performance and Analysis, ACM Computing Surveys, 30(1), 1998.
[27]
http://www.cs.wisc.edu/~sblanas/proofsketch.pdf

Cited By

View all
  • (2025)Revisiting the Design of In-Memory Dynamic Graph StorageProceedings of the ACM on Management of Data10.1145/37097203:1(1-27)Online publication date: 11-Feb-2025
  • (2025)Aion: Live Migration for In-Memory Databases with Zero Downtime and Reduced Redundant Data TransferData Science and Engineering10.1007/s41019-024-00276-5Online publication date: 15-Jan-2025
  • (2025)C5: cloned concurrency control that always keeps upThe VLDB Journal — The International Journal on Very Large Data Bases10.1007/s00778-025-00901-334:2Online publication date: 1-Mar-2025
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Proceedings of the VLDB Endowment
Proceedings of the VLDB Endowment  Volume 5, Issue 4
December 2011
120 pages

Publisher

VLDB Endowment

Publication History

Published: 01 December 2011
Published in PVLDB Volume 5, Issue 4

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)24
  • Downloads (Last 6 weeks)4
Reflects downloads up to 23 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2025)Revisiting the Design of In-Memory Dynamic Graph StorageProceedings of the ACM on Management of Data10.1145/37097203:1(1-27)Online publication date: 11-Feb-2025
  • (2025)Aion: Live Migration for In-Memory Databases with Zero Downtime and Reduced Redundant Data TransferData Science and Engineering10.1007/s41019-024-00276-5Online publication date: 15-Jan-2025
  • (2025)C5: cloned concurrency control that always keeps upThe VLDB Journal — The International Journal on Very Large Data Bases10.1007/s00778-025-00901-334:2Online publication date: 1-Mar-2025
  • (2024)MotorProceedings of the 18th USENIX Conference on Operating Systems Design and Implementation10.5555/3691938.3691981(801-819)Online publication date: 10-Jul-2024
  • (2024)Massively parallel multi-versioned transaction processingProceedings of the 18th USENIX Conference on Operating Systems Design and Implementation10.5555/3691938.3691979(765-781)Online publication date: 10-Jul-2024
  • (2024)An approach for supporting transparent acid transactions over heterogeneous data stores in microservice architecturesComputer Science and Information Systems10.2298/CSIS221210006N21:1(167-202)Online publication date: 2024
  • (2024)LeanStore: A High-Performance Storage Engine for NVMe SSDsProceedings of the VLDB Endowment10.14778/3685800.368591517:12(4536-4545)Online publication date: 8-Nov-2024
  • (2024)High-Performance Query Processing with NVMe Arrays: Spilling without Killing PerformanceProceedings of the ACM on Management of Data10.1145/36988132:6(1-27)Online publication date: 20-Dec-2024
  • (2024)Jiffy: A Lock-free Skip List with Batch Updates and Snapshots (Abstract)Proceedings of the 2024 ACM Workshop on Highlights of Parallel Computing10.1145/3670684.3673410(5-7)Online publication date: 17-Jun-2024
  • (2024)Griffin: Fast Transactional Database Index with Hash and B+-Tree2024 IEEE 20th International Conference on e-Science (e-Science)10.1109/e-Science62913.2024.10678674(1-10)Online publication date: 16-Sep-2024
  • Show More Cited By

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media