Filter Tree Node Ordering by Cost and Selectivity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Database management systems face inefficiencies in query processing due to suboptimal filter tree performance characteristics, leading to increased time in responding to queries.

Innovation Solution

A method of evaluating and ordering filter parameters in a filter tree based on cost and selectivity performance characteristics, using a sample input to determine optimal ordering and reordering of filter parameters, enhancing query processing efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If filter parameters are processed in a default order without optimization, then the filter tree can be constructed simply, but the query processing time increases

Engineering Contradiction:
Improvequery processing timeVSAvoidfilter tree evaluation complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The system performs preliminary evaluation of filter parameters using a sample input dataset before actual query execution. This preliminary action determines the cost and selectivity of each filter parameter, allowing the system to pre-optimize the filter tree ordering. By evaluating filters in advance on representative data, the system avoids suboptimal default ordering during actual query processing, thereby reducing query processing time without adding significant runtime complexity.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The filter tree structure is made dynamic by allowing reordering of filter parameters based on evaluated performance characteristics. Instead of a static default order, the system dynamically adjusts the filter parameter sequence according to measured cost and selectivity metrics. This dynamic reordering adapts to the specific characteristics of the data and query, optimizing processing efficiency while maintaining flexibility in the filter tree construction.

Inventive Principle:
Principle #15Dynamics

2Productivity

If filter parameters are evaluated and reordered based on cost and selectivity, then query processing efficiency improves, but the complexity of the filter tree construction process increases

Engineering Contradiction:
Improvequery processing efficiencyVSAvoidfilter tree construction complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The filter parameter evaluation process is self-service in nature, automatically determining the optimal ordering without requiring manual intervention or complex external optimization algorithms. The system uses the sample input data itself to evaluate and rank filter parameters, making the optimization process self-contained and relatively simple. This self-evaluation approach improves query processing efficiency while keeping the construction complexity manageable through automated, data-driven decisions.

Inventive Principle:
Principle #25Self-service

3Measurement precision

If a sample input is used to evaluate filter parameters, then the ordering accuracy improves, but the additional processing step increases time consumption

Engineering Contradiction:
Improvefilter parameter evaluation accuracyVSAvoidevaluation time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system applies partial action by using a sample input dataset that is smaller than the full data volume but sufficient to accurately evaluate filter parameter characteristics. This sample-based approach provides adequate measurement precision for determining optimal filter ordering without the time cost of evaluating all data. The sample size is calibrated to provide sufficient statistical accuracy while minimizing the overhead of the evaluation step.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11386155B2Filter evaluation in a database system
Publication Date: 2022.07.12 SINGLESTORE INC
  • US11386155B2 patent drawing
  • US11386155B2 patent drawing
  • US11386155B2 patent drawing

AI summary

A computer-implemented method of evaluating a set of filter parameters being represented by a filter tree comprising a plurality of nodes. The method can include identifying whether a node is a root of a sub-tree comprising other nodes of the filter tree; generating a cost for said node by processing a sample input comprising a plurality of data items of a data source using the filter parameter and measuring the time taken for the plurality of data items to be processed; and determining a selectivity of said node based on an output of its filter parameter as a result of processing the sample input using the filter parameter; then ordering at least some of the plurality of nodes of the filter tree having the same parent node based on their relative costs and selectivities, for use in generating an ordered filter tree.