Optimizing Database-Backed Applications with Query Synthesis

  • Alvin Cheung | M.I.T.

Modern web applications are frequently built using object-relational mapping (ORM) frameworks. Such frameworks aim to provide transparent access to the database by allowing developers express persistent data accesses using the same language as the application. Unfortunately, due to a variety of reasons, developers often write application code that does not take advantage of the optimized relational implementations that database systems provide, and the ORM framework cannot optimize such code as it lacks knowledge about the application logic.

In this talk, we present Query By Synthesis (QBS), a system that automatically identifies imperative program fragments and uses program synthesis to convert functionality written as imperative code into relational queries to be executed in the database. Using real-world examples, we show that QBS can convert a variety of imperative constructs into relational queries, and can improve application performance by orders of magnitude.

Speaker Details

Alvin Cheung is a Ph.D. student at MIT, working with Profs. Sam Madden and Armando Solar-Lezama in the database and computer assisted programming groups. His research interests are in applying program analysis and synthesis techniques to help developers implement and optimize large software systems. He has previously won the best paper award at CIDR, and is a recipient of NDSEG, NSF, and Intel Ph.D. fellowships.

    • Portrait of Jeff Running

      Jeff Running

Series: Microsoft Research Talks