HYBRID EXECUTION OF QUERIES TO ANALYTICAL DATABASES

Abstract

Analytical database engines should benefit from evolving heterogeneous distributed architectures and utilize their resources efficiently: various accelerators, complex memory hierarchy, and distributed nature of systems bring performance improvement opportunities. The article reviews existing approaches for in-memory DBMS query executor implementation using hardware accelerators, especially GPUs. Massive parallelism and high on-device memory bandwidth make graphics processors a promising alternative as a core query evaluation device. Existing methods do not utilize all modern hardware capabilities and usually are bound, performance-wise, by relatively slow PCIe data transfer in a GPU-as-a-co-processor model for each kernel representing a single relational algebra operator. Another existing approaches’ issue is explicit code base separation for relational algebra operators code generation (for CPU and GPU) that significantly limits possibilities of joint device usage for performance increase and make it less feasible. The article presents an efficient query execution method using an example of two device classes (CPU and GPU) by compiling queries into a single, device agnostic, intermediate representation (SPIRV) and an approach for corresponding hybrid physical query plan optimization based on extended classical “Exchange” operator with explicit control over heterogeneous resources and parallelism level available. A cost model composition process using basic compute DBMS patterns benchmarking and buses bandwidth data for both relational and auxiliary operators is proposed. Potential processing speedup from holistic query optimization is estimated empirically with a commercial open source DBMS OmniSci DB. Preliminary results show significant (3-8x, depending on device choice) possible speedup even with just using the right device for the job.

References

Скачивания

Published:

2021-07-18

Issue:

Section:

SECTION II. COMMUNICATION, NAVIGATION AND GUIDANCE

Keywords:

DBMS, GPU, analytical query optimization, analytical query processing, in-memory databases