Proceedings of ISP RAS


Survey of Just-in-Time Query Compilation Methods

E.Y. Sharygin (ISP RAS, Moscow, Russia; MSU, Moscow, Russia)
R.A. Buchatskiy (ISP RAS, Moscow, Russia)

Abstract

Data processing systems have been traditionally optimized for I/O, mainly because, until pretty recently, disk storage has been the most affordable type of storage and the most prevalent one. This is not necessarily the case today, particularly in the world of big data analytics. As the problems posed by data analytics become more commonplace, efficient CPU utilization becomes the new bottleneck. Just-in-time query compilation is a promising solution to this challenge that is currently being applied both in academic studies and across the industry. This paper is a survey of just-in-time query compilation methods sampled from the literature available on the subject. All methods are broadly categorized into expression compilation and hotspot methods, whole-query compilation methods, and specialization-based methods. A number of query processors are identified within confines of each category, various methods, architectures, and significant results are described. Finally, we conclude with an overview of most general approaches to query compilation that we identified.

Keywords

just-in-time compilation; query engines; query languages; expression compilation; hotspot compilation; holistic compilation; push-model; code specialization

Edition

Proceedings of the Institute for System Programming, vol. 29, issue 3, 2017, pp. 179-224.

ISSN 2220-6426 (Online), ISSN 2079-8156 (Print).

DOI: 10.15514/ISPRAS-2017-29(3)-11

Full text of the paper in pdf (in Russian) Back to the contents of the volume