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

Leveraging lock contention to improve OLTP application performance

Published: 01 January 2016 Publication History

Abstract

Locking is one of the predominant costs in transaction processing. While much work has focused on designing efficient concurrency control mechanisms, not much has been done on understanding how transaction applications issue queries and leveraging application semantics to improve application performance. This paper presents Quro, a query-aware compiler that automatically reorders queries in transaction code to improve performance. Observing that certain queries within a transaction are more contentious than others as they require locking the same tuples as other concurrently executing transactions, Quro automatically changes the application such that contentious queries are issued as late as possible. We have evaluated Quro on various transaction benchmarks, and our results show that Quro-generated implementations can increase transaction throughput by up to 6.53x, while reduce transaction latency by up to 85%.

References

[1]
The bidding benchmark from silo. https://github.com/stephentu/silo.git.
[2]
Clang. http://clang.llvm.org.
[3]
dbt2 benchmark tool. http://osdldbt.sourceforge.net/#dbt2.
[4]
dbt5 benchmark tool. http://osdldbt.sourceforge.net/#dbt5.
[5]
Gurobi optimization. http://www.gurobi.com.
[6]
lpsolve. http://sourceforge.net/projects/lpsolve.
[7]
P. A. Bernstein and N. Goodman. Concurrency control in distributed database systems. In ACM Comput. Surv., volume 13, pages 185--221, June 1981.
[8]
P. A. Bernstein, D. W. Shipman, and W. S. Wong. Formal aspects of serializability in database concurrency control. In IEEE Trans. Softw. Eng., volume 5, pages 203--216, May 1979.
[9]
M. Chavan, R. Guravannavar, K. Ramachandra, and S. Sudarshan. DBridge: A program rewrite tool for set-oriented query execution. In Data Engineering (ICDE), 2011 IEEE 27th International Conference on, pages 1284--1287, 2011.
[10]
A. Cheung, S. Madden, O. Arden, and A. C. Myers. Automatic partitioning of database applications. In Proceedings of the VLDB Endowment, volume 5, pages 1471--1482, 2012.
[11]
A. Cheung, S. Madden, and A. Solar-Lezama. Sloth: Being lazy is a virtue (when issuing database queries). In Proceedings of the 2014 ACM SIGMOD International Conference on Management of Data, pages 931--942, 2014.
[12]
J. M. Faleiro, A. Thomson, and D. J. Abadi. Lazy evaluation of transactions in database systems. In Proceedings of the 2014 ACM SIGMOD International Conference on Management of Data, pages 15--26, 2014.
[13]
R. Guravannavar and S. Sudarshan. Rewriting procedures for batched bindings. In Proceedings of the VLDB Endowment, volume 1, pages 1107--1123, Aug. 2008.
[14]
T. Horikawa. Latch-free data structures for DBMS: Design, implementation, and evaluation. In Proceedings of the 2013 ACM SIGMOD International Conference on Management of Data, pages 409--420, 2013.
[15]
R. Johnson, I. Pandis, and A. Ailamaki. Improving OLTP scalability using speculative lock inheritance. In Proceedings of the VLDB Endowment, volume 2, pages 479--489, Aug. 2009.
[16]
R. Johnson, I. Pandis, N. Hardavellas, A. Ailamaki, and B. Falsafi. Shore-MT: A scalable storage manager for the multicore era. In Proceedings of the 12th International Conference on Extending Database Technology: Advances in Database Technology, 2009.
[17]
H. Jung, H. Han, A. D. Fekete, G. Heiser, and H. Y. Yeom. A scalable lock manager for multicores. In Proceedings of the 2013 ACM SIGMOD International Conference on Management of Data, pages 73--84, 2013.
[18]
H. T. Kung and J. T. Robinson. On optimistic methods for concurrency control. In ACM Trans. Database Syst., 1981.
[19]
T. J. Marlowe and B. G. Ryder. Properties of data flow frameworks: A unified model. In Acta Inf., pages 121--163, 1990.
[20]
D. Porter and E. Witchel. Understanding transactional memory performance. In Proceedings of the 2010 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS), pages 97--108, March 2010.
[21]
Transaction Processing Performance Council. TPC-C Benchmark Revision 5.11. Technical report, 2010.
[22]
M. J. Wolfe. High Performance Compilers for Parallel Computing. Addison-Wesley Longman Publishing Co., Inc., 1995.
[23]
C. Yan and A. Cheung. Leveraging lock contention to improve OLTP application performance, technical report. http://homes.cs.washington.edu/~congy/reorder_techreport.pdf.
[24]
L. T. Yang and M. Guo. High-performance computing: paradigm and infrastructure, volume 44. John Wiley & Sons, 2005.
[25]
X. Yu, G. Bezerra, A. Pavlo, S. Devadas, and M. Stonebraker. Staring into the abyss: An evaluation of concurrency control with one thousand cores. In Proceedings of the VLDB Endowment, volume 8, pages 209--220, Nov. 2014.

Cited By

View all
  • (2023)CITRONProceedings of the 21st USENIX Conference on File and Storage Technologies10.5555/3585938.3585957(297-314)Online publication date: 21-Feb-2023
  • (2023)Protecting Data Integrity of Web Applications with Database Constraints Inferred from Application CodeProceedings of the 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 210.1145/3575693.3575699(632-645)Online publication date: 27-Jan-2023
  • (2022)Robustness Against Read CommittedProceedings of the 41st ACM SIGMOD-SIGACT-SIGAI Symposium on Principles of Database Systems10.1145/3517804.3524162(1-14)Online publication date: 12-Jun-2022
  • Show More Cited By

Index Terms

  1. Leveraging lock contention to improve OLTP application performance
      Index terms have been assigned to the content through auto-classification.

      Recommendations

      Comments

      Information & Contributors

      Information

      Published In

      cover image Proceedings of the VLDB Endowment
      Proceedings of the VLDB Endowment  Volume 9, Issue 5
      January 2016
      72 pages
      ISSN:2150-8097
      Issue’s Table of Contents

      Publisher

      VLDB Endowment

      Publication History

      Published: 01 January 2016
      Published in PVLDB Volume 9, Issue 5

      Qualifiers

      • Research-article

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • Downloads (Last 12 months)26
      • Downloads (Last 6 weeks)0
      Reflects downloads up to 30 Aug 2024

      Other Metrics

      Citations

      Cited By

      View all
      • (2023)CITRONProceedings of the 21st USENIX Conference on File and Storage Technologies10.5555/3585938.3585957(297-314)Online publication date: 21-Feb-2023
      • (2023)Protecting Data Integrity of Web Applications with Database Constraints Inferred from Application CodeProceedings of the 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 210.1145/3575693.3575699(632-645)Online publication date: 27-Jan-2023
      • (2022)Robustness Against Read CommittedProceedings of the 41st ACM SIGMOD-SIGACT-SIGAI Symposium on Principles of Database Systems10.1145/3517804.3524162(1-14)Online publication date: 12-Jun-2022
      • (2022)How Good is My HTAP System?Proceedings of the 2022 International Conference on Management of Data10.1145/3514221.3526148(1810-1824)Online publication date: 10-Jun-2022
      • (2022)P4DB - The Case for In-Network OLTPProceedings of the 2022 International Conference on Management of Data10.1145/3514221.3517825(1375-1389)Online publication date: 10-Jun-2022
      • (2022)Improving scalability of database systems by reshaping user parallel I/OProceedings of the Seventeenth European Conference on Computer Systems10.1145/3492321.3519570(592-609)Online publication date: 28-Mar-2022
      • (2022)In-memory transaction processing: efficiency and scalability considerationsKnowledge and Information Systems10.1007/s10115-019-01340-761:3(1209-1240)Online publication date: 11-Mar-2022
      • (2021)UDOProceedings of the VLDB Endowment10.14778/3484224.348423614:13(3402-3414)Online publication date: 28-Oct-2021
      • (2021)Interactive demonstration of SQLCheckProceedings of the VLDB Endowment10.14778/3476311.347634314:12(2779-2782)Online publication date: 28-Oct-2021
      • (2021)Robustness against read committed for transaction templatesProceedings of the VLDB Endowment10.14778/3476249.347626814:11(2141-2153)Online publication date: 1-Jul-2021
      • Show More Cited By

      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