skip to main content
10.1145/3035918.3058747acmconferencesArticle/Chapter ViewAbstractPublication PagesmodConference Proceedingsconference-collections
short-paper

DBridge: Translating Imperative Code to SQL

Published: 09 May 2017 Publication History

Abstract

Application programs that access data located remotely (such as in a database) often perform poorly due to multiple network round trips and transfer of unused data. This situation is exacerbated in applications that use object-relational mapping (ORM) frameworks such as Hibernate, as developers tend to express complex query logic using imperative code, resulting in poor performance.
DBridge is a system for optimizing data access in database applications by using static program analysis and program transformations. Recently, we incorporated a new suite of optimization techniques into DBridge. These techniques optimize database application programs by identifying relational operations expressed in imperative code, and translating them into SQL. In this demonstration, we showcase these techniques using a plugin for the IntelliJ IDEA Java IDE as the front end. We show the performance gains achieved by employing our system on real world applications that use JDBC or Hibernate.

References

[1]
M. Chavan, R. Guravannavar, K. Ramachandra, and S. Sudarshan. DBridge: A program rewrite tool for set-øriented query execution (demo). In ICDE, 2011.
[2]
A. Cheung, A. Solar-Lezama, and S. Madden. Optimizing database-backed applications with query synthesis. PLDI, 2013.
[3]
K. V. Emani, K. Ramachandra, S. Bhattacharya, and S. Sudarshan. Extracting Equivalent SQL from Imperative Code in Database Applications. SIGMOD, 2016.
[4]
K. Ramachandra, M. Chavan, R. Guravannavar, and S. Sudarshan. Program transformations for asynchronous and batched query submission. TKDE '15, 27(2):531--544.
[5]
Soot: A Java Optimization Framework http://www.sable.mcgill.ca/soot.
[6]
Wilos Orchestration Software http://www.ohloh.net/p/6390.

Cited By

View all
  • (2024)The Key to Effective UDF Optimization: Before Inlining, First Perform OutliningProceedings of the VLDB Endowment10.14778/3696435.369643618:1(1-13)Online publication date: 1-Sep-2024
  • (2024)Sharing Queries with Nonequivalent User-defined Aggregate FunctionsACM Transactions on Database Systems10.1145/364913349:2(1-46)Online publication date: 10-Apr-2024
  • (2023)Automated Translation of Functional Big Data Queries to SQLProceedings of the ACM on Programming Languages10.1145/35860477:OOPSLA1(580-608)Online publication date: 6-Apr-2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SIGMOD '17: Proceedings of the 2017 ACM International Conference on Management of Data
May 2017
1810 pages
ISBN:9781450341974
DOI:10.1145/3035918
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: 09 May 2017

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. database applications
  2. hibernate
  3. java
  4. orm
  5. program regions
  6. program rewriting
  7. rule based transformations
  8. sql
  9. static program analysis

Qualifiers

  • Short-paper

Funding Sources

  • Tata Consultancy Services

Conference

SIGMOD/PODS'17
Sponsor:

Acceptance Rates

Overall Acceptance Rate 785 of 4,003 submissions, 20%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)21
  • Downloads (Last 6 weeks)0
Reflects downloads up to 25 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2024)The Key to Effective UDF Optimization: Before Inlining, First Perform OutliningProceedings of the VLDB Endowment10.14778/3696435.369643618:1(1-13)Online publication date: 1-Sep-2024
  • (2024)Sharing Queries with Nonequivalent User-defined Aggregate FunctionsACM Transactions on Database Systems10.1145/364913349:2(1-46)Online publication date: 10-Apr-2024
  • (2023)Automated Translation of Functional Big Data Queries to SQLProceedings of the ACM on Programming Languages10.1145/35860477:OOPSLA1(580-608)Online publication date: 6-Apr-2023
  • (2022)BabelfishProceedings of the VLDB Endowment10.14778/3489496.348950115:2(196-210)Online publication date: 4-Feb-2022
  • (2021)Procedural extensions of SQLProceedings of the VLDB Endowment10.14778/3457390.345740214:8(1378-1391)Online publication date: 21-Oct-2021
  • (2021)Fine-grained lineage for safer notebook interactionsProceedings of the VLDB Endowment10.14778/3447689.344771214:6(1093-1101)Online publication date: 12-Apr-2021
  • (2021)UDF to SQL translation through compositional lazy inductive synthesisProceedings of the ACM on Programming Languages10.1145/34854895:OOPSLA(1-26)Online publication date: 15-Oct-2021
  • (2021)SAND: a static analysis approach for detecting SQL antipatternsProceedings of the 30th ACM SIGSOFT International Symposium on Software Testing and Analysis10.1145/3460319.3464818(270-282)Online publication date: 11-Jul-2021
  • (2020)Debugging Database Queries: A Survey of Tools, Techniques, and UsersProceedings of the 2020 CHI Conference on Human Factors in Computing Systems10.1145/3313831.3376485(1-16)Online publication date: 21-Apr-2020
  • (2020)Connecting Galaxies: Bridging the Gap Between Databases and ApplicationsSOFSEM 2020: Theory and Practice of Computer Science10.1007/978-3-030-38919-2_54(648-656)Online publication date: 20-Jan-2020
  • 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

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media