Query compilation in PostgreSQL by specialization of the DBMS source code


Цитировать

Полный текст

Открытый доступ Открытый доступ
Доступ закрыт Доступ предоставлен
Доступ закрыт Только для подписчиков

Аннотация

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.

Об авторах

E. Sharygin

Ivannikov Institute for System Programming; Moscow State University

Автор, ответственный за переписку.
Email: eush@ispras.ru
Россия, ul. Solzhenitsyna 25, Moscow, 109004; Moscow, 119991

R. Buchatskiy

Ivannikov Institute for System Programming

Email: eush@ispras.ru
Россия, ul. Solzhenitsyna 25, Moscow, 109004

R. Zhuykov

Ivannikov Institute for System Programming

Email: eush@ispras.ru
Россия, ul. Solzhenitsyna 25, Moscow, 109004

A. Sher

Ivannikov Institute for System Programming

Email: eush@ispras.ru
Россия, ul. Solzhenitsyna 25, Moscow, 109004

Дополнительные файлы

Доп. файлы
Действие
1. JATS XML

© Pleiades Publishing, Ltd., 2017

Согласие на обработку персональных данных

 

Используя сайт https://journals.rcsi.science, я (далее – «Пользователь» или «Субъект персональных данных») даю согласие на обработку персональных данных на этом сайте (текст Согласия) и на обработку персональных данных с помощью сервиса «Яндекс.Метрика» (текст Согласия).