Dynamic Query Substitution Using Performance-Based Query Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing query execution systems struggle with performance variability due to differing data distributions and volumes, leading to inefficient resource usage and potential user experience degradation.

Innovation Solution

A computerized method and system that analyzes queries by generating modified and unmodified instances, comparing their performance, and recording results to dynamically substitute queries based on performance metrics, with expiration policies to adapt to changing conditions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If query execution is performed without modification, then system simplicity is maintained, but query performance varies due to data distribution and volume changes

Engineering Contradiction:
Improvequery performance consistencyVSAvoidquery execution system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system performs preliminary analysis of query performance by executing modified instances of queries and comparing their performance metrics before determining whether to substitute the original query. This advance preparation allows the system to proactively optimize query performance based on historical data rather than reactively responding to performance degradation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements a feedback mechanism where query performance is continuously monitored, analyzed, and used to inform future query execution decisions. The analysis results data store maintains performance information that feeds back into the query substitution process, creating a closed-loop system that continuously improves query performance based on actual execution outcomes.

Inventive Principle:
Principle #23Feedback

2Productivity

If query analysis and modification are performed in real-time, then query performance is improved, but system resource usage increases

Engineering Contradiction:
Improvequery execution efficiencyVSAvoidsystem resource consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The system performs query analysis and modification determination in advance before actual query execution. By pre-analyzing query performance characteristics and determining optimal modifications beforehand, the system avoids the overhead of real-time analysis during critical query execution periods, thus improving query efficiency while managing resource consumption.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates modified instances of queries as copies for analysis purposes, rather than permanently altering the original query definitions. These copied instances are executed and compared to evaluate performance, allowing the system to test modifications without committing resources to permanent changes until proven effective.

Inventive Principle:
Principle #26Copying

3Loss of time

If query modification patterns are applied dynamically, then query execution time is reduced, but system complexity increases

Engineering Contradiction:
Improvequery execution timeVSAvoidquery modification system complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The system applies query modification patterns by changing specific parameters of the original query, such as adding TOP statements to limit result sets or modifying join conditions. These parameter changes are dynamically determined based on performance analysis results, allowing the system to reduce query execution time by optimizing query parameters without requiring complete query rewriting.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system applies modifications locally to specific parts of queries rather than globally transforming entire query structures. By targeting specific query components that benefit from modification (such as result set limits or join optimizations), the system reduces execution time while minimizing the complexity increase associated with comprehensive query transformation.

Inventive Principle:
Principle #3Local quality

4Reliability

If analysis results are stored indefinitely, then query optimization consistency is maintained, but data storage requirements increase

Engineering Contradiction:
Improveoptimization consistencyVSAvoiddata storage volume
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system implements expiration policies that periodically invalidate analysis results after a defined time period. This periodic refresh ensures that query optimization remains consistent and reliable within the validity period while preventing indefinite storage of outdated analysis data, thus balancing optimization consistency with storage efficiency.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The system discards expired analysis results from the analysis results data store when they exceed the defined time period. By selectively removing outdated optimization data, the system maintains storage efficiency while preserving the ability to recover and regenerate analysis results when needed, balancing storage requirements with optimization reliability.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS12554717B2Dynamically substituting a modified query based on performance analysis
Publication Date: 2026.02.17 MICROSOFT TECHNOLOGY LICENSING LLC
  • US12554717B2 patent drawing
  • US12554717B2 patent drawing
  • US12554717B2 patent drawing

AI summary

The disclosure herein describes analyzing queries and dynamically modifying those queries based on the analysis. An indication that a query is to be executed by a first process is detected. It is determined that an analysis results data store does not include an active analysis result for the query using a query identifier of the query and, as a result, a modified instance of the query is generated using a modification pattern. The query and the modified instance of the query are analyzed based on a performance metric using a second process that is independent of the first process. An active analysis result of the query is recorded based on the analysis, wherein the analysis result indicates whether future executions of the query should be modified using the modification pattern. Further, in some examples, analysis results expire, such that associated queries are reanalyzed to generate active analysis results periodically.