English

Compiling PL/SQL Away

Databases 2019-09-10 v1 Programming Languages

Abstract

"PL/SQL functions are slow," is common developer wisdom that derives from the tension between set-oriented SQL evaluation and statement-by-statement PL/SQL interpretation. We pursue the radical approach of compiling PL/SQL away, turning interpreted functions into regular subqueries that can then be efficiently evaluated together with their embracing SQL query, avoiding any PL/SQL to SQL context switches. Input PL/SQL functions may exhibit arbitrary control flow. Iteration, in particular, is compiled into SQL-level recursion. RDBMSs across the board reward this compilation effort with significant run time savings that render established developer lore questionable.

Keywords

Cite

@article{arxiv.1909.03291,
  title  = {Compiling PL/SQL Away},
  author = {Christian Duta and Denis Hirn and Torsten Grust},
  journal= {arXiv preprint arXiv:1909.03291},
  year   = {2019}
}

Comments

6 pages