NestGPU: Nested Query Processing on GPU

Nested queries are commonly used to express complex use-cases by connecting the output of a subquery as an input to the outer query block. However, their execution is highly time-consuming. Researchers have proposed various algorithms and techniques that unnest subqueries to improve performance. Sin...

Full description

Saved in:
Bibliographic Details
Published in2021 IEEE 37th International Conference on Data Engineering (ICDE) pp. 1008 - 1019
Main Authors Floratos, Sofoklis, Xiao, Mengbai, Wang, Hao, Guo, Chengxin, Yuan, Yuan, Lee, Rubao, Zhang, Xiaodong
Format Conference Proceeding
LanguageEnglish
Published IEEE 01.04.2021
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:Nested queries are commonly used to express complex use-cases by connecting the output of a subquery as an input to the outer query block. However, their execution is highly time-consuming. Researchers have proposed various algorithms and techniques that unnest subqueries to improve performance. Since this is a customized approach that needs high algorithmic and engineering efforts, it is largely not an open feature in most existing database systems.Our approach is general-purpose and GPU-acceleration based, aiming for high performance at a minimum development cost. We look into the major differences between nested and unnested query structures to identify their merits and limits for GPU processing. Furthermore, we focus on the nested approach that is algorithmically simple and rich in parallels, in relatively low space complexity, and generic in program structure. We create a new code generation framework that best fits GPU for the nested method. We also make several critical system optimizations including massive parallel scanning with indexing, effective vectorization to optimize join operations, exploiting cache locality for loops and efficient GPU memory management. We have implemented the proposed solutions in NestGPU, a GPU-based column-store database system that is GPU device independent. We have extensively evaluated and tested the system to show the effectiveness of our proposed methods.
ISSN:2375-026X
DOI:10.1109/ICDE51399.2021.00092