Semijoin Reduction Sequence Optimization via Directed Graph Search

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional database systems face high communication costs and inefficiencies in optimizing outer join queries, particularly when using semijoin techniques, leading to varying execution times and suboptimal performance.

Innovation Solution

A system and method utilizing a directed graph optimization algorithm, such as A*, to dynamically generate cost estimations and guide the search for an optimal semijoin reduction sequence, reducing communication costs and improving query execution plans.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional dynamic programming methods are used to optimize outer join queries, then completeness of solution search is improved, but computational time and complexity increase significantly

Engineering Contradiction:
Improvecompleteness of solution searchVSAvoidcomputational time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the search space by identifying and prioritizing promising semijoin reduction sequences early in the search process. Instead of exhaustively exploring all possible sequences, the method divides the search into phases: initial promising sequence identification, iterative improvement through local search, and selective deepening of specific paths. This segmentation allows the algorithm to focus computational resources on the most promising regions of the search space while maintaining reasonable completeness.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic adjustment of search parameters and strategies during execution. The algorithm adapts its search depth, breadth, and focus based on intermediate results, computational time elapsed, and observed patterns in the query graph. This dynamic behavior allows the system to balance between exploring new sequences and exploiting known promising paths, achieving better time-complexity tradeoffs than static dynamic programming approaches.

Inventive Principle:
Principle #15Dynamics

2Manufacturing precision

If exhaustive search of all semijoin reduction sequences is performed, then optimality of execution plan is improved, but computational complexity increases exponentially

Engineering Contradiction:
Improveoptimality of execution planVSAvoidcomputational complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent performs preliminary analysis of the query graph to identify structural properties, potential semijoin sequences, and cost estimates before committing to a full search. By pre-computing influence sets, identifying target relations, and estimating communication costs for different join orders, the algorithm narrows down the search space to only those sequences that are plausibly optimal. This preliminary filtering dramatically reduces the number of sequences that require exhaustive evaluation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent employs heuristic evaluation functions and approximate cost models that provide quick, though not perfectly accurate, assessments of semijoin sequence quality. These cheap evaluation mechanisms allow the algorithm to discard clearly suboptimal sequences early without performing expensive exact computations. The heuristic estimates act as disposable filters that eliminate large portions of the search space before detailed optimization is applied to promising candidates.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

3Productivity

If communication costs are reduced through optimized semijoin sequences, then query execution efficiency is improved, but the complexity of finding optimal sequences increases

Engineering Contradiction:
Improvequery execution efficiencyVSAvoidoptimization algorithm complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent incorporates feedback mechanisms where the results of partial evaluations and cost estimates inform subsequent search decisions. As the algorithm explores different semijoin sequences, it learns from the observed communication costs and structural patterns, adjusting its search strategy to favor sequences with similar characteristics. This feedback loop allows the system to improve query execution efficiency by focusing on promising sequence types while avoiding repeated exploration of costly patterns.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent changes key parameters of the search algorithm based on the specific characteristics of the query being optimized. Depending on the query graph structure, data distribution estimates, and resource constraints, the algorithm adjusts parameters such as maximum search depth, evaluation threshold, and sequence prioritization criteria. These parameter changes allow the same optimization framework to efficiently handle diverse query types while adapting the complexity level to match the problem difficulty.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8271478B2Fast algorithms for computing semijoin reduction sequences
Publication Date: 2012.09.18 SAP SE
  • US8271478B2 patent drawing
  • US8271478B2 patent drawing
  • US8271478B2 patent drawing

AI summary

Systems and methods for using optimization techniques to construct a nearly optimal execution plan for an outer join query are disclosed. A query graph of the outer join query is constructed, by computing for each node the set of nodes influencing it, for each target node the set of its needed reducers, and predetermining the effects of all admissible moves in all possible sequences. The directed graph of all admissible move sequences is formed. An optimization process includes dynamically generating good estimations for the target distance of a search state. Some heuristics are disclosed for providing start solutions for the optimization process.