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

Multi-version range concurrency control in Deuteronomy

Published: 01 September 2015 Publication History

Abstract

The Deuteronomy transactional key value store executes millions of serializable transactions/second by exploiting multi-version timestamp order concurrency control. However, it has not supported range operations, only individual record operations (e.g., create, read, update, delete). In this paper, we enhance our multi-version timestamp order technique to handle range concurrency and prevent phantoms. Importantly, we maintain high performance while respecting the clean separation of duties required by Deuteronomy, where a transaction component performs purely logical concurrency control (including range support), while a data component performs data storage and management duties. Like the rest of the Deuteronomy stack, our range technique manages concurrency information in a latch-free manner. With our range enhancement, Deuteronomy can reach scan speeds of nearly 250 million records/s (more than 27 GB/s) on modern hardware, while providing serializable isolation complete with phantom prevention.

References

[1]
M. M. Astrahan et al. System R: Relational Approach To Database Management. ACM TODS 1(2): 97--137, 1976.
[2]
B. Becker, S. Gschwind, T. Ohler, B. Seeger, and P. Widmayer. An Asymptotically Optimal Multiversion B-Tree. VLDBJ 5(4): 264--275, 1996.
[3]
M. J. Cahill, U. Rohm, and A. D. Fekete. Serializable Isolation for Snapshot Databases. In Sigmod, 2008, pp. 729--738.
[4]
D. J. DeWitt, R. H. Katz, F. Olken, L. D. Shapiro, M. Stonebraker, D. A. Wood. Implementation Techniques for Main Memory Database Systems. SIGMOD, 1984, pp. 1--8
[5]
C. Diaconu et al. Hekaton: SQL Server's Memory-Optimized OLTP Engine. In SIGMOD, 2013, pp. 1243--1254.
[6]
J. Gray, R. A. Lorie, G. R. Putzolu, I. L. Traiger. Granularity of Locks in a Shared Data Base. In VLDB, 1975, pp. 428--451.
[7]
C. S. Jensen and D. B. Lomet. Transaction Timestamping in (Temporal) Databases. In VLDB, 2001, pp. 441--450.
[8]
C. S. Jensen and R. T. Snodgrass. Temporal Data Management. TKDE 11(1): 36--44, 1999.
[9]
R. Johnson, I. Pandis, A. Ailamaki: Improving OLTP Scalability using Speculative Lock Inheritance. PVLDB 2(1): 479--489, 2009.
[10]
R. Johnson, I. Pandis, R. Stoica, M. Athanassoulis, A. Ailamaki. Scalability of Write-Ahead Logging on Multicore and Multisocket Hardware. VLDBJ 21(2): 239--263, 2012.
[11]
A. Kemper and T. Nuemann. HyPer: A Hybrid OLTP & OLAP Main Memory Database System Based on Virtual Memory Snapshots. In ICDE, 2011, pp. 195--206.
[12]
P-A Larson et al: High-Performance Concurrency Control Mechanisms for Main-Memory Databases. PVLDB 5(4): 298--309, 2011.
[13]
J. Levandoski, D. Lomet, M. Mokbel, and K. Zhao. Deuteronomy: Transaction Support for Cloud Data. In CIDR, 2011, pp. 123--133.
[14]
J. Levandoski, D. Lomet, S. Sengupta. LLAMA: A Cache/Storage Subsystem for Modern Hardware. PVLDB 6(10): 877--888, 2013.
[15]
J. Levandoski, D. Lomet, and S. Sengupta. The Bw-Tree: A B-tree for New Hardware Platforms. In ICDE 2013: 302--313.
[16]
J. Levandoski, D. Lomet, S. Sengupta, R. Stutsman, and R. Wang. High Performance Transactions in Deuteronomy. In CIDR, 2015.
[17]
D. B. Lomet and B. Salzberg. Access Methods for Multiversion Data. In SIGMOD, 1989. pp. 315--324.
[18]
D. B. Lomet and F Nawab. High Performance Temporal Indexing on Modern Hardware. To appear in ICDE, 2015.
[19]
D. B. Lomet, R. S. Barga, M. F. Mokbel, G. Shegalov, R. Wang, and Y Zhu. Immortal DB: Transaction Time Support for SQL Server. In SIGMOD, 2005, pp. 939--941.
[20]
D. B. Lomet and M. F. Mokbel. Locking Key Ranges with Unbundled Transaction Services. PVLDB 2(1): 265--276, 2009.
[21]
D. B. Lomet. Key Range Locking Strategies of Improved Concurrency. In VLDB, 1993, pp. 655--664.
[22]
D. Lomet, A. Fekete, R. Wang, and P. Ward. Multi-Version Concurrency via Timestamp Range Conflict Management. In ICDE, 2012, pp. 714--725.
[23]
D. Lomet, A. Fekete, G. Weikum, M. Zwilling. Unbundling Transaction Services in the Cloud. In CIDR, 2009, 123--133.
[24]
Y. Mao, E. Kohler, R. T. Morris. Cache Craftiness for Fast Multicore Key-Value Storage. In EuroSys, 2012, pp. 183--196.
[25]
E. McKenzie and R. Snodgrass. Extending the Relational Algebra to Support Transaction Time. In SIGMOD, 1987, pp. 467--478.
[26]
H. Muhe, S. Wolf, A. Kemper, and T. Neumann. An Evaluation of Strict Timestamp Ordering Concurrency Control for Main-Memory Database Systems. In IMDM Workshop, 2013, 74--85.
[27]
C. Mohan. ARIES/KVL: A Key-Value Locking Method for Concurrency Control of Multiaction Transactions Operation on B-Tree Indexes. In VLDB, 1990, pp. 392--405.
[28]
T. Neumann, T. Muhlbauer, A. Kemper. Fast Serializable Multi-Version Concurrency Control for Main-Memory Database Systems. In SIGMOD, 2015, pp. 677--689.
[29]
D. P. Reed. Implementing Atomic Actions on Decentralized Data. ACM TOCS 1(1): 3--23, 1983.
[30]
K. Run et al. VLL: A Lock Manager Redesign for Main Memory Database Systems. VLDBJ: 1--25, 2015.
[31]
M. Stonebraker et al. The End of an Architectural Era: (It's Time for a Complete Rewrite). In VLDB, 2007, pp. 1150--1160.
[32]
M. Stonebraker and A. Weisberg. The VoltDB Main Memory DBMS. IEEE Data Eng. Bulletin 36(2): 21--27, 2013.
[33]
A. Thomson et al. Calvin: Fast Distributed Transactions for Partitioned Database Systems. In SIGMOD, 2012, pp. 1--12.
[34]
S. Tu et al. Speedy Transactions in Multicore In-Memory Databases. In SOSP, 2013, pp. 18--32.
[35]
G. Weikum and G. Vossen. Transactional Information Systems: Theory, Algorithms, and the Practice of Concurrency Control and Recovery. Morgan Kaufmann, 2002.

Cited By

View all
  • (2023)ScalarDB: Universal Transaction Manager for PolystoresProceedings of the VLDB Endowment10.14778/3611540.361156316:12(3768-3780)Online publication date: 1-Aug-2023
  • (2023)Ad Hoc Transactions through the Looking Glass: An Empirical Study of Application-Level Transactions in Web ApplicationsACM Transactions on Database Systems10.1145/363855349:1(1-43)Online publication date: 23-Dec-2023
  • (2022)Ad Hoc Transactions in Web Applications: The Good, the Bad, and the UglyProceedings of the 2022 International Conference on Management of Data10.1145/3514221.3526120(4-18)Online publication date: 10-Jun-2022
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Proceedings of the VLDB Endowment
Proceedings of the VLDB Endowment  Volume 8, Issue 13
Proceedings of the 41st International Conference on Very Large Data Bases, Kohala Coast, Hawaii
September 2015
144 pages
ISSN:2150-8097
  • Editors:
  • Chen Li,
  • Volker Markl
Issue’s Table of Contents

Publisher

VLDB Endowment

Publication History

Published: 01 September 2015
Published in PVLDB Volume 8, Issue 13

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)23
  • Downloads (Last 6 weeks)2
Reflects downloads up to 14 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2023)ScalarDB: Universal Transaction Manager for PolystoresProceedings of the VLDB Endowment10.14778/3611540.361156316:12(3768-3780)Online publication date: 1-Aug-2023
  • (2023)Ad Hoc Transactions through the Looking Glass: An Empirical Study of Application-Level Transactions in Web ApplicationsACM Transactions on Database Systems10.1145/363855349:1(1-43)Online publication date: 23-Dec-2023
  • (2022)Ad Hoc Transactions in Web Applications: The Good, the Bad, and the UglyProceedings of the 2022 International Conference on Management of Data10.1145/3514221.3526120(4-18)Online publication date: 10-Jun-2022
  • (2021)Achieving high throughput and elasticity in a larger-than-memory storeProceedings of the VLDB Endowment10.14778/3457390.345740614:8(1427-1440)Online publication date: 21-Oct-2021
  • (2019)Accelerating Hybrid Transactional/Analytical Processing Using Consistent Dual-SnapshotDatabase Systems for Advanced Applications10.1007/978-3-030-18576-3_4(52-69)Online publication date: 22-Apr-2019
  • (2017)Scalable database logging for multicoresProceedings of the VLDB Endowment10.14778/3149193.314919511:2(135-148)Online publication date: 1-Oct-2017
  • (2017)CicadaProceedings of the 2017 ACM International Conference on Management of Data10.1145/3035918.3064015(21-35)Online publication date: 9-May-2017
  • (2016)Graph Analytics Through Fine-Grained ParallelismProceedings of the 2016 International Conference on Management of Data10.1145/2882903.2915238(463-478)Online publication date: 26-Jun-2016
  • (2016)Transaction HealingProceedings of the 2016 International Conference on Management of Data10.1145/2882903.2915202(1689-1704)Online publication date: 26-Jun-2016
  • (2016)Design Principles for Scaling Multi-core OLTP Under High ContentionProceedings of the 2016 International Conference on Management of Data10.1145/2882903.2882958(1583-1598)Online publication date: 26-Jun-2016

View Options

Get Access

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media