Dynamic compilation of SQL queries for PostgreSQL
https://doi.org/10.15514/ISPRAS-2016-28(6)-3
Abstract
About the Authors
R. A. BuchatskiyRussian Federation
E. Y. Sharygin
Russian Federation
L. V. Skvortsov
Russian Federation
R. A. Zhuykov
Russian Federation
D. M. Melnik
Russian Federation
R. V. Baev
Russian Federation
References
1. Neumann T. Efficiently compiling efficient query plans for modern hardware. Proc. VLDB Endow. , vol. 4, no. 9, pp. 539–550, Jun. 2011.
2. Neumann T., Leis V. Compiling Database Queries into Machine Code. IEEE Data Engineering Bulletin, March 2014.
3. Lattner C. LLVM: An Infrastructure for Multi-Stage Optimization. Master’s thesis, Computer Science Dept., University of Illinois at Urbana-Champaign, Urbana, IL.
4. HyPer – A Hybrid OLTP&OLAP High Performance DBMS, http://www.hyper-db.de
5. PostgreSQL, an open source object-relational database system. https://www.postgresql.org
6. Vitesse DB website. http://vitessedata.com/vitesse-db
7. TPC-H, an ad-hoc, decision support benchmark. http://www.tpc.org/tpch/
8. Butterstein D., Grust T. Precision Performance Surgery for PostgreSQL – LLVM-based Expression Compilation, Just in Time. Proceedings of the 42nd Int'l Conference on Very Large Databases (VLDB 2016), New Delhi, India, August 2016.
9. Graefe G. Volcano – an extensible and parallel query evaluation system. IEEE Trans. Knowl. Data Eng., 6(1): 120–135, 1994.
10. MCJIT Design and Implementation. http://llvm.org/docs/MCJITDesignAndImplementation.html
11. Sharygin E.Y., Buchatskiy R.A, Skvortsov L.V., Zhuykov R.A., Melnik D.M. Dynamic compilation of expressions in SQL queries for PostgreSQL. Trudy ISP RAN/Proc. ISP RAS, vol. 28, issue 4, 2016, pp. 217-240 (in Russian). DOI: 10.15514/ISPRAS-2016-28(4)-13
12. clang – a C language family frontend for LLVM, http://clang.llvm.org/
13. opt – modular LLVM optimizer and analyzer, http://llvm.org/releases/3.7.1/docs/CommandGuide/opt.html
14. llc – LLVM static compiler, http://llvm.org/releases/3.7.1/docs/CommandGuide/llc.html
15. PostgreSQL with JIT compiler for expressions – project source code at github.com website. https://github.com/ispras/postgres/tree/llvm-expressions
Review
For citations:
Buchatskiy R.A., Sharygin E.Y., Skvortsov L.V., Zhuykov R.A., Melnik D.M., Baev R.V. Dynamic compilation of SQL queries for PostgreSQL. Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS). 2016;28(6):37-48. (In Russ.) https://doi.org/10.15514/ISPRAS-2016-28(6)-3