Challenges for a GPU-Accelerated Dynamic Programming Approach for Join-Order Optimization

Andreas Meister, Gunter Saake
2016 Workshop Grundlagen von Datenbanken  
Relational database management systems apply query optimization in order to determine efficient execution plans for declarative queries. Since the execution time of equivalent query execution plans can differ by several orders of magnitude based on the used join order, join-order optimization is one of the most important problems within query processing. Since the time-budget of query optimization is limited, efficient join-order optimization approaches are needed to determine execution plans
more » ... th low execution times. The state of the art in commercial systems for determining optimal join orders is dynamic programming. Unfortunately, existing algorithms are mainly sequential algorithms, which do not benefit from current parallel system architectures. In current system architectures, specialized co-processors, such as GPUs, provide a higher computational power compared to CPUs. If the full potential of GPUs is used, query optimizer can provide optimal solutions for more complex problems. Unfortunately, adapting existing dynamic programming approaches for join-order optimization to GPUs is not straightforward. In this paper, we discuss the challenges for a GPU-accelerated dynamic programming approach for join-order optimization, and propose different ways to handle these challenges.
dblp:conf/gvd/0001S16 fatcat:a6ewabqyjfddtjbdoy2qdzdrom