Sprinkling Selections over Join DAGs for Efficient Query Optimization
Satyanarayana R Valluri, Soujanya Vadapalli, Kamalakar Karlapalem
Abstract
In optimizing queries, solutions based on AND/OR DAG can generate all possible join orderings and select placements before searching for optimal query execution strategy. But as the number of joins and selection conditions increase, the space and time complexity to generate optimal query plan increases exponentially. In this paper, we use join graph for a relational database schema to either pre-compute all possible join orderings that can be executed and store it as a join DAG or, extract joins in the queries to incrementally build a history join DAG as and when the queries are executed. The select conditions in the queries are appropriately placed in the retrieved join DAG (or, history join DAG) to generate optimal query execution strategy. We experimentally evaluate our query optimization technique on TPC-D/H query sets to show their effectiveness over AND/OR DAG query optimization strategy. Finally, we illustrate how our technique can be used for efficient multiple query optimization and selection of materialized views in data warehousing environments.
Create a lesson
Related papers
Same Query, Different Answer: Run-to-Run Variance in Semantic Query Processing
Oktie Hassanzadeh, Dharmashankar Subramanian
ProvQML: Efficient Provenance Capture for Machine Learning as Recursive Aggregate SQL [Extended Version]
Nkechi J. Akinwale, Seokki Lee
Benchmarking Content-Defined Chunking Algorithms for Data Deduplication
Marcel Gregoriadis, Leonhard Balduf, Björn Scheuermann et al.
Time-Varying Favorite-Longshot Bias in Polymarket Weather Markets
Shouchen Qiu, Huaijun Qiu
MatQuery: Execution-Grounded Natural-Language Querying over Heterogeneous Materials Databases
Chen Jason Zhang, Qi Chen
CALQA: Conformal Screening of Forecast-Ensemble Configurations from One Mergeable State
Xiufeng Liu, Ruyu Liu, Yusen Liu et al.