LinDP++: Generalizing linearized DP to crossproducts and non-inner joins

Bernhard Radke, Thomas Neumann

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

2 Scopus citations

Abstract

Choosing the best join order is one of the main tasks of query optimization, as join ordering can easily affect query execution times by large factors. Finding the optimal join order is NP-hard in general, which means that the best known algorithms have exponential worst case complexity. As a consequence only relatively modest problems can be solved exactly, which is a problem for today's large, machine generated queries. Two developments have improved the situation: If we disallow crossproducts, graph-based DP algorithms have pushed the boundary of solvable problems to a few dozen relations. Beyond that, the linearized DP strategy, where an optimal left-deep plan is used to linearize the search space of a subsequent DP, has proven to work very well up to a hundred relations or more. However, these strategies have limitations: Graph-based DP intentionally does not consider implicit crossproducts, which is almost always ok but sometimes undesirable, as in some cases such crossproducts are beneficial. Even more severe, linearized DP can handle neither crossproducts nor non-inner joins, which is a serious limitation. Large queries with, e. g., outer joins are quite common and having to fall back on simple greedy heuristics in this case is highly undesirable. In this work we remove both limitations: First, we generalize the underlying linearization strategy to handle non-inner joins, which allows us to linearize the search space of arbitrary queries. And second, we explicitly recognize potential crossproduct opportunities, and expose them to the join ordering strategies by augmenting the query graph. This results in a very generic join ordering framework that can handle arbitrary queries and produces excellent results over the whole range of query sizes.

Original languageEnglish
Title of host publicationDatenbanksysteme fur Business, Technologie und Web, BTW 2019 and 18. Fachtagung des GI-Fachbereichs "Datenbanken und Informationssysteme", DBIS 2019
EditorsTorsten Grust, Felix Naumann, Alexander Bohm, Wolfgang Lehner, Theo Harder, Erhard Rahm, Andreas Heuer, Meike Klettke, Holger Meyer
PublisherGesellschaft fur Informatik (GI)
Pages57-76
Number of pages20
ISBN (Electronic)9783885796831
DOIs
StatePublished - 2019
EventDatenbanksysteme fur Business, Technologie und Web, BTW 2019 and 18. Fachtagung des GI-Fachbereichs "Datenbanken und Informationssysteme", DBIS 2019 - Database Systems for Business, Technology and Web, BTW 2019 and 18th Symposium of the GI Department "Databases and Information Systems", DBIS 2019 - Rostock, Germany
Duration: 4 Mar 20198 Mar 2019

Publication series

NameLecture Notes in Informatics (LNI), Proceedings - Series of the Gesellschaft fur Informatik (GI)
VolumeP-289
ISSN (Print)1617-5468
ISSN (Electronic)2944-7682

Conference

ConferenceDatenbanksysteme fur Business, Technologie und Web, BTW 2019 and 18. Fachtagung des GI-Fachbereichs "Datenbanken und Informationssysteme", DBIS 2019 - Database Systems for Business, Technology and Web, BTW 2019 and 18th Symposium of the GI Department "Databases and Information Systems", DBIS 2019
Country/TerritoryGermany
CityRostock
Period4/03/198/03/19

Fingerprint

Dive into the research topics of 'LinDP++: Generalizing linearized DP to crossproducts and non-inner joins'. Together they form a unique fingerprint.

Cite this