Query compilation in PostgreSQL by specialization of the DBMS source code


Cite item

Full Text

Open Access Open Access
Restricted Access Access granted
Restricted Access Subscription Access

Abstract

This paper describes the development of a query compiler for the PostgreSQL DBMS based on automatic code specialization methods; these methods allow one to avoid the development and support difficulties typical for classical query compilers by dividing the compiler development problem into two independent subproblems: reduction of overhead costs and implementation of algorithmic improvements. We assert that this decomposition facilitates the solution of both the subproblems: the cost reduction can be automated, while the algorithmic improvements can be implemented in the interpreter in the DBMS implementation language. This paper presents methods for online and offline specialization, considers specifics of specialization and binding-time analysis of the PostgreSQL source code, and describes the transition to a push model of execution.

About the authors

E. Yu. Sharygin

Ivannikov Institute for System Programming; Moscow State University

Author for correspondence.
Email: eush@ispras.ru
Russian Federation, ul. Solzhenitsyna 25, Moscow, 109004; Moscow, 119991

R. A. Buchatskiy

Ivannikov Institute for System Programming

Email: eush@ispras.ru
Russian Federation, ul. Solzhenitsyna 25, Moscow, 109004

R. A. Zhuykov

Ivannikov Institute for System Programming

Email: eush@ispras.ru
Russian Federation, ul. Solzhenitsyna 25, Moscow, 109004

A. R. Sher

Ivannikov Institute for System Programming

Email: eush@ispras.ru
Russian Federation, ul. Solzhenitsyna 25, Moscow, 109004

Supplementary files

Supplementary Files
Action
1. JATS XML

Copyright (c) 2017 Pleiades Publishing, Ltd.