Dynamic Query Optimization for Read-Mostly Servers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Query optimization in client-server systems is challenging, especially for read-mostly servers with mixed workloads, as traditional approaches fail to adapt to dynamic changes in workload and cannot effectively optimize both selective and unselective queries simultaneously, leading to suboptimal response times.

Innovation Solution

A method and system that dynamically optimize client queries by comparing their complexity measure to a predetermined threshold, modifying the query to reduce complexity if it exceeds the threshold, and selecting appropriate post-processing routines to improve response times, thereby shifting filtering operations between the server and client to balance load.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If server capacity is increased to improve response time, then query processing capability is improved, but system cost increases

Engineering Contradiction:
Improveresponse timeVSAvoidsystem capacity
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent implements dynamic query optimization that adapts to changing workload conditions in real-time. The system monitors query patterns, server load, and data change rates to dynamically adjust optimization strategies, allowing the system to maintain optimal performance without permanently increasing capacity. This dynamic adaptation resolves the contradiction by providing high-speed response only when and where needed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes operational parameters such as query rewriting rules, result set caching strategies, and filtering thresholds based on current system conditions. By adjusting these parameters dynamically rather than increasing physical capacity, the system achieves improved response times without proportionally increasing system resources.

Inventive Principle:
Principle #35Parameter changes

2Speed

If server is tuned to handle selective queries, then selective query performance is improved, but unselective query performance deteriorates

Engineering Contradiction:
Improveselective query performanceVSAvoidquery type adaptability
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The patent employs dynamic query optimization that automatically adjusts its strategy based on the specific query type and current workload conditions. For selective queries, the system applies server-side filtering and optimization; for unselective queries, it uses different strategies such as result set caching or client-side filtering. This dynamic adaptation allows the system to optimize for both query types without compromising either.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system applies different optimization techniques to different query types and even different parts of the same query based on local characteristics. Rather than a global tuning approach that favors one query type, the system tailors its optimization strategy to the specific needs of each query, maintaining high performance across diverse workloads.

Inventive Principle:
Principle #3Local quality

3Ease of manufacture

If static query optimization is used, then implementation simplicity is improved, but adaptability to changing workload deteriorates

Engineering Contradiction:
Improveimplementation simplicityVSAvoidworkload adaptability
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The patent implements a self-adapting query optimization system that automatically monitors its own performance and adjusts its strategies without external intervention. The system collects execution statistics, identifies performance bottlenecks, and dynamically modifies optimization rules based on observed workload patterns. This self-service capability provides adaptability while maintaining implementation simplicity, as the system manages its own complexity internally.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system incorporates feedback loops that continuously monitor query execution performance and use this information to adjust optimization strategies. By feeding performance data back into the optimization engine, the system automatically adapts to changing workloads without requiring complex external configuration or manual tuning, resolving the contradiction between simplicity and adaptability.

Inventive Principle:
Principle #23Feedback

4Measurement precision

If complex query optimization is applied, then query accuracy is improved, but processing overhead increases

Engineering Contradiction:
Improvequery result accuracyVSAvoidprocessing overhead
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies partial optimization strategies that focus computational effort only on the most critical aspects of query processing. Rather than applying full complex optimization to every query, the system identifies and optimizes only the bottleneck operations or the most impactful parts of the query execution plan. This selective application of optimization reduces overall processing overhead while maintaining sufficient result accuracy.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system dynamically adjusts the level of optimization applied based on query characteristics and current system conditions. For simple queries or when system resources are constrained, less intensive optimization is applied. For complex queries or when resources are abundant, more thorough optimization is performed. This dynamic scaling of optimization intensity balances accuracy requirements with processing overhead.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10127276B2Method and system for dynamically optimizing client queries to read-mostly servers
Publication Date: 2018.11.13 DELL PROD LP
  • US10127276B2 patent drawing
  • US10127276B2 patent drawing
  • US10127276B2 patent drawing

AI summary

A system and method of query optimization are disclosed. A complexity measure of a client query received from a client application is compared to a predetermined threshold, which is determined using at least one of system data and query execution data. An optimized query is generated by modifying the client query to reduce the complexity measure of the client query if the complexity measure of the client query exceeds the predetermined threshold. The optimized query is submitted to a server application on a server and a post-processing routine to be applied to the result set is selected.