Title
Compiling Database Application Programs.
Abstract
There is a trend towards increased specialization of data management software for performance reasons. In this paper, we study the automatic specialization and optimization of database application programs -- sequences of queries and updates, augmented with control flow constructs as they appear in database scripts, UDFs, transactional workloads and triggers in languages such as PL/SQL. show how to build an optimizing compiler for database application programs using generative programming and state-of-the-art compiler technology. We evaluate a hand-optimized low-level implementation of TPC-C, and identify the key optimization techniques that account for its good performance. Our compiler fully automates these optimizations and, applied to this benchmark, outperforms the manually optimized baseline by a factor of two. By selectively disabling some of the optimizations in the compiler, we derive a clinical and precise way of obtaining insight into their individual performance contributions.
Year
Venue
Field
2018
arXiv: Databases
SQL,Programming language,Computer science,Control flow,Compiler,Optimizing compiler,Software,Database application,Data management,Database,Scripting language
DocType
Volume
Citations 
Journal
abs/1807.09887
0
PageRank 
References 
Authors
0.34
0
6
Name
Order
Citations
PageRank
Mohammad Dashti1464.52
Sachin Basil John220.70
Thierry Coppey300.68
Amir Shaikhha4377.31
Vojin Jovanovic51035.03
Christoph Koch62817163.43