Fast Serializable Multi-Version Concurrency Control for Main-Memory Database Systems

被引:119
|
作者
Neumann, Thomas [1 ]
Muehlbauer, Tobias [1 ]
Kemper, Alfons [1 ]
机构
[1] Tech Univ Munich, Munich, Germany
关键词
Multi-Version Concurrency Control; MVCC; Serializability;
D O I
10.1145/2723372.2749436
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Multi-Version Concurrency Control (MVCC) is a widely employed concurrency control mechanism, as it allows for execution modes where readers never block writers. However, most systems implement only snapshot isolation (SI) instead of full serializability. Adding serializability guarantees to existing SI implementations tends to be prohibitively expensive. We present a novel MVCC implementation for main-memory database systems that has very little overhead compared to serial execution with single-version concurrency control, even when maintaining serializability guarantees. Updating data in-place and storing versions as before-image deltas in undo buffers not only allows us to retain the high scan performance of single-version systems but also forms the basis of our cheap and fine-grained serializability validation mechanism. The novel idea is based on an adaptation of precision locking and verifies that the (extensional) writes of recently committed transactions do not intersect with the (intensional) read predicate space of a committing transaction. We experimentally show that our MVCC model allows very fast processing of transactions with point accesses as well as read-heavy transactions and that there is little need to prefer SI over full serializability any longer.
引用
收藏
页码:677 / 689
页数:13
相关论文
共 50 条
  • [41] Achieving Starvation-Freedom in Multi-version Transactional Memory Systems
    Chaudhary, Ved P.
    Juyal, Chirag
    Kulkarni, Sandeep
    Kumari, Sweta
    Peri, Sathya
    [J]. NETWORKED SYSTEMS, NETYS 2019, 2019, 11704 : 291 - 310
  • [42] Achieving starvation-freedom in multi-version transactional memory systems
    Ved Prakash Chaudhary
    Chirag Juyal
    Sandeep Kulkarni
    Sweta Kumari
    Sathya Peri
    [J]. Computing, 2022, 104 : 2159 - 2179
  • [43] Verifying vMVCC, a high-performance transaction library using multi-version concurrency control
    Chang, Yun-Sheng
    Jung, Ralf
    Sharma, Upamanyu
    Tassarotti, Joseph
    Kaashoek, M. Frans
    Zeldovich, Nickolai
    [J]. PROCEEDINGS OF THE 17TH USENIX SYMPOSIUM ON OPERATING SYSTEMS DESIGN AND IMPLEMENTATION, OSDI 2023, 2023, : 871 - 886
  • [44] Achieving starvation-freedom in multi-version transactional memory systems
    Chaudhary, Ved Prakash
    Juyal, Chirag
    Kulkarni, Sandeep
    Kumari, Sweta
    Peri, Sathya
    [J]. COMPUTING, 2022, 104 (10) : 2159 - 2179
  • [45] A Data Distribution Strategy for Scalable Main-Memory Database
    Huang, Yunkui
    Zhang, YanSong
    Ji, XiaoDong
    Wang, ZhanWei
    Wang, Shan
    [J]. ADVANCES IN WEB AND NETWORK TECHNOLOGIES, AND INFORMATION MANAGEMENT, 2009, 5731 : 13 - 24
  • [46] A Multi-Dimension Hash Index Design for Main-Memory RFID Database Applications
    Lu, Yung-Feng
    Ye, Sheng-Shang
    [J]. THIRD INTERNATIONAL CONFERENCE ON INFORMATION SECURITY AND INTELLIGENT CONTROL (ISIC 2012), 2012, : 61 - 64
  • [47] GRFusion: Graphs as First-Class Citizens in Main-Memory Relational Database Systems
    Hassan, Mohamed S.
    Kuznetsova, Tatiana
    Jeong, Hyun Chai
    Aref, Walid G.
    Sadoghi, Mohammad
    [J]. SIGMOD'18: PROCEEDINGS OF THE 2018 INTERNATIONAL CONFERENCE ON MANAGEMENT OF DATA, 2018, : 1789 - 1792
  • [48] Concurrency control algorithm for memory-resident database systems
    [J]. 1600, Publ by Springer-Verlag Berlin, Berlin 33, Ger (367):
  • [49] SEMANTICALLY RICH API FOR IN-DATABASE DATA MANIPULATION IN MAIN-MEMORY ERP SYSTEMS
    Borovskiy, Vadym
    Schwarz, Christian
    Zeier, Alexander
    Koch, Wolfgang
    [J]. ICEIS 2011: PROCEEDINGS OF THE 13TH INTERNATIONAL CONFERENCE ON ENTERPRISE INFORMATION SYSTEMS, VOL 1, 2011, : 253 - 260
  • [50] A distributed real-time main-memory database for telecommunication
    Lindström, J
    Niklander, T
    Porkka, P
    Raatikainen, K
    [J]. DATABASES IN TELECOMMUNICATIONS, 2000, 1819 : 158 - 173