skip to main content
10.1145/2938503.2938555acmotherconferencesArticle/Chapter ViewAbstractPublication PagesideasConference Proceedingsconference-collections
research-article

Lazy Evaluation for Concurrent OLTP and Bulk Transactions

Published: 11 July 2016 Publication History

Abstract

Existing concurrency control systems cannot execute transactions with overlapping updates concurrently. This is especially problematic for bulk updates, which usually overlap with all concurrent transactions. To solve this, we have developed a concurrency control mechanism based on lazy evaluation, which moves evaluation of operations from the writer to the reader. This allows readers to prioritize evaluation of those operations in which they are interested, without loss of atomicity of transactions. To handle bulk operations, we dynamically split large transactions into transactions on smaller parts of the data. In this paper we present an abstract lazy index structure for lazy transactions, and show how transactions can be encoded to effectively use this data structure. Moreover, we discuss evaluation strategies for lazy transactions, where trade-offs can be made between latency and throughput. To evaluate our approach, we have implemented a concurrent lazy trie, on which we performed a number of micro benchmarks.

References

[1]
R. Bayer and E. McCreight. Organization and maintenance of large ordered indexes. Acta Informatica, 1(3):173--189, 1972.
[2]
P. A. Bernstein and N. Goodman. Concurrency control in distributed database systems. ACM Comput. Surv., 13(2):185--221, June 1981.
[3]
N. G. Bronson, H. Chafi, and K. Olukotun. CCSTM: A library-based STM for Scala. In The First Annual Scala Workshop at Scala Days, 2010.
[4]
C. A. Curino, H. J. Moon, M. Ham, and C. Zaniolo. The PRISM Workbench: database schema evolution without tears. In ICDE'09, pages 1523--1526. IEEE, 2009.
[5]
K. Eswaran, J. Gray, R. Lorie, and I. Traiger. The Notions of Consistency and Predicate Locks in a Database System. Communications of the ACM, 19(11):624--633, Nov. 1976.
[6]
J. M. Faleiro, A. Thomson, and D. J. Abadi. Lazy evaluation of transactions in database systems. In SIGMOD'14, pages 15--26. ACM, 2014.
[7]
E. Fredkin. Trie Memory. Communications of the ACM, 3(9):490--499, Sept. 1960.
[8]
P. Henderson and J. H. Morris Jr. A lazy evaluator. In POPL'76, pages 95--103. ACM, 1976.
[9]
H.-T. Kung and J. T. Robinson. On optimistic methods for concurrency control. ACM TODS, 6(2):213--226, 1981.
[10]
V. Leis, A. Kemper, and T. Neumann. The adaptive radix tree: ARTful indexing for main-memory databases. In ICDE'13, pages 38--49. IEEE, 2013.
[11]
J. Løland and S.-O. Hvasshovd. Online, Non-blocking Relational Schema Changes. In EDBT'06, pages 405--422. Springer-Verlag, 2006.
[12]
I. Neamtiu, J. Bardin, M. R. Uddin, D.-Y. Lin, and P. Bhattacharya. Improving Cloud Availability with On-the-fly Schema Updates. In COMAD'13, pages 24--34. Computer Society of India, 2013.
[13]
A. Prokopec, N. G. Bronson, P. Bagwell, and M. Odersky. Concurrent tries with efficient non-blocking snapshots. In ACM Sigplan Notices, volume 47, pages 151--160. ACM, 2012.
[14]
M. Ronström. On-Line Schema Update for a Telecom Database. In ICDE'00, pages 329--338. IEEE, 2000.
[15]
N. Sarnak and R. E. Tarjan. Planar point location using persistent search trees. Communications of the ACM, 29(7):669--679, 1986.
[16]
M. Sulzmann, E. S. Lam, and S. Marlow. Comparing the Performance of Concurrent Linked-list Implementations in Haskell. In DAMP'09, pages 37--46. ACM, 2008.
[17]
X. Sun, R. Wang, B. Salzberg, and C. Zou. Online B-tree merging. In SIGMOD'05, pages 335--346. ACM, 2005.
[18]
P. Trinder. A functional database. PhD thesis, University of Oxford, 1989.
[19]
L. Wevers, M. Hofstra, M. Tammens, M. Huisman, and M. van Keulen. Analysis of the Blocking Behaviour of Schema Transformations in Relational Database Systems. In ADBIS'15, pages 169--183. Springer, 2015.

Cited By

View all
  • (2024)Mammoths are Slow: The Overlooked Transactions of Graph DataProceedings of the VLDB Endowment10.14778/3636218.363624117:4(904-911)Online publication date: 5-Mar-2024
  1. Lazy Evaluation for Concurrent OLTP and Bulk Transactions

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Other conferences
    IDEAS '16: Proceedings of the 20th International Database Engineering & Applications Symposium
    July 2016
    420 pages
    ISBN:9781450341189
    DOI:10.1145/2938503
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

    In-Cooperation

    • Keio University: Keio University

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 11 July 2016

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. Bulk Update
    2. Contention
    3. Lazy Evaluation
    4. Transactions

    Qualifiers

    • Research-article
    • Research
    • Refereed limited

    Conference

    IDEAS '16

    Acceptance Rates

    Overall Acceptance Rate 74 of 210 submissions, 35%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)3
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 08 Mar 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Mammoths are Slow: The Overlooked Transactions of Graph DataProceedings of the VLDB Endowment10.14778/3636218.363624117:4(904-911)Online publication date: 5-Mar-2024

    View Options

    Login options

    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