Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2213836.2213852acmconferencesArticle/Chapter ViewAbstractPublication PagesmodConference Proceedingsconference-collections
research-article

Holistic optimization by prefetching query results

Published: 20 May 2012 Publication History

Abstract

In this paper we address the problem of optimizing performance of database/web-service backed applications by means of automatically prefetching query results. Prefetching has been performed in earlier work based on predicting query access patterns; however such prediction is often of limited value, and can perform unnecessary prefetches. There has been some earlier work on program analysis and rewriting to automatically insert prefetch requests; however, such work has been restricted to rewriting of single procedures. In many cases, the query is in a procedure which does not offer much scope for prefetching within the procedure; in contrast, our approach can perform prefetching in a calling procedure, even when the actual query is in a called procedure, thereby greatly improving the benefits due to prefetching. Our approach does not perform any intrusive changes to the source code, and places prefetch instructions at the earliest possible points while avoiding wasteful prefetches. We have incorporated our techniques into a tool for holistic optimization called DBridge, to prefetch query results in Java programs that use JDBC. Our tool can be easily extended to handle Hibernate API calls as well as Web service requests. Our experiments on several real world applications demonstrate the applicability and significant performance gains due to our techniques.

References

[1]
Adempiere http://www.adempiere.org/.
[2]
I. T. Bowman and K. Salem. Semantic prefetching of correlated query sequences. In ICDE, 2007.
[3]
M. Chavan, R. Guravannavar, K. Ramachandra, and S. Sudarshan. Dbridge: A program rewrite tool for set-oriented query execution. In ICDE, pages 1284--1287, 2011.
[4]
M. Chavan, R. Guravannavar, K. Ramachandra, and S. Sudarshan. Program transformations for asynchronous query submission. In ICDE, 2011.
[5]
R. Guravannavar and S. Sudarshan. Rewriting procedures for batched bindings. Proc. VLDB Endow., 1(1):1107--1123, 2008.
[6]
L. M. Haas, D. Kossmann, and I. Ursu. Loading a cache with query results. In VLDB, 1999.
[7]
Hibernate http://www.hibernate.org.
[8]
A. Ibrahim and W. R. Cook. Automatic prefetching by traversal profiling in object persistence architectures. In Proc. of the ECOOP, 2006.
[9]
Java Database Connectivity (JDBC) API http://java.sun.com/products/jdbc/overview.html.
[10]
ObjectWeb Consortium-JMOB (Java middleware open benchmarking).
[11]
K. Kennedy and K. S. McKinley. Loop distribution with arbitrary control flow. In Procs. ACM/IEEE conference on Supercomputing, pages 407--416, 1990.
[12]
U. Khedker, A. Sanyal, and B. Karkare. Data Flow Analysis: Theory and Practice. CRC Press, Inc., 1st edition, 2009.
[13]
A. Manjhi, C. Garrod, B. M. Maggs, T. C. Mowry, and A. Tomasic. Holistic Query Transformations for Dynamic Web Applications. In ICDE, 2009.
[14]
S. S. Muchnick. Advanced Compiler Design and Implementation. Morgan Kaufmann, 1997.
[15]
M. Palmer. Fido: A cache that learns to fetch. In VLDB, pages 255--264, 1991.
[16]
S. Parthasarathy, W. Li, M. Cierniak, and M. J. Zaki. Compile-time inter-query dependence analysis. In IEEE Symp. on Parallel and Distr. Processing, 1996.
[17]
P. Seshadri, H. Pirahesh, and T. C. Leung. Complex Query Decorrelation. In ICDE, 1996.
[18]
A. J. Smith. Sequentiality and prefetching in database systems. ACM Trans. Database Syst., 3:223--247, Sept. 1978.
[19]
Soot: A Java Optimization Framework http://www.sable.mcgill.ca/soot.
[20]
Twitter http://www.twitter.com.

Cited By

View all
  • (2024)WeBridge: Synthesizing Stored Procedures for Large-Scale Real-World Web ApplicationsProceedings of the ACM on Management of Data10.1145/36393192:1(1-29)Online publication date: 26-Mar-2024
  • (2023)Goal-Oriented Scheduling in Sensor Networks With Application Timing AwarenessIEEE Transactions on Communications10.1109/TCOMM.2023.328225671:8(4513-4527)Online publication date: Aug-2023
  • (2022)Query Dictionary for Frequent Non-Indexed Queries in HTAP DatabasesIEEE Access10.1109/ACCESS.2022.315335010(23140-23151)Online publication date: 2022
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SIGMOD '12: Proceedings of the 2012 ACM SIGMOD International Conference on Management of Data
May 2012
886 pages
ISBN:9781450312479
DOI:10.1145/2213836
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 ACM 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]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 20 May 2012

Permissions

Request permissions for this article.

Check for updates

Author Tag

  1. holistic query optimization

Qualifiers

  • Research-article

Conference

SIGMOD/PODS '12
Sponsor:

Acceptance Rates

SIGMOD '12 Paper Acceptance Rate 48 of 289 submissions, 17%;
Overall Acceptance Rate 785 of 4,003 submissions, 20%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)11
  • Downloads (Last 6 weeks)1
Reflects downloads up to 23 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2024)WeBridge: Synthesizing Stored Procedures for Large-Scale Real-World Web ApplicationsProceedings of the ACM on Management of Data10.1145/36393192:1(1-29)Online publication date: 26-Mar-2024
  • (2023)Goal-Oriented Scheduling in Sensor Networks With Application Timing AwarenessIEEE Transactions on Communications10.1109/TCOMM.2023.328225671:8(4513-4527)Online publication date: Aug-2023
  • (2022)Query Dictionary for Frequent Non-Indexed Queries in HTAP DatabasesIEEE Access10.1109/ACCESS.2022.315335010(23140-23151)Online publication date: 2022
  • (2021)Novel Design Approach for Optimal Execution Plan and Strategy for Query ExecutionAdvanced Computing10.1007/978-981-16-0404-1_23(308-319)Online publication date: 11-Feb-2021
  • (2020)Investigating the Effects of Object-Relational Impedance Mismatch on the Efficiency of Object-Relational Mapping FrameworksJournal of Database Management10.4018/JDM.202010010131:4(1-23)Online publication date: 1-Oct-2020
  • (2019)A Novel Efficient Query Strategy on HibernateProceedings of the 2019 8th International Conference on Software and Computer Applications10.1145/3316615.3316717(105-108)Online publication date: 19-Feb-2019
  • (2018)Building Efficient Query Engines in a High-Level LanguageACM Transactions on Database Systems10.1145/318365343:1(1-45)Online publication date: 11-Apr-2018
  • (2018)Dataflow tunnelingProceedings of the 40th International Conference on Software Engineering10.1145/3180155.3180171(586-597)Online publication date: 27-May-2018
  • (2018)Cobra: A Framework for Cost-Based Rewriting of Database Applications2018 IEEE 34th International Conference on Data Engineering (ICDE)10.1109/ICDE.2018.00068(689-700)Online publication date: Apr-2018
  • (2017)A program optimization for automatic database result cachingACM SIGPLAN Notices10.1145/3093333.300989152:1(271-284)Online publication date: 1-Jan-2017
  • Show More Cited By

View Options

Login options

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