Query Plan Evaluator for Database Performance Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database query plans often do not optimize data access efficiently, leading to performance degradation due to operations like table scans, implicit conversions, and excessive joins, which waste system resources and result from bad coding practices.

Innovation Solution

A query plan evaluator uses a knowledge base to identify and suggest modifications to operations that degrade performance, such as table scans, implicit conversions, and excessive joins, by analyzing the query plan against predefined rules and providing recommendations for improvement.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a query plan uses table scans, implicit conversions, and excessive joins, then the query can access data without strict optimization constraints, but system resources are wasted and performance degrades

Engineering Contradiction:
Improvequery execution speedVSAvoidsystem resource usage
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The system performs preliminary analysis of query plans before execution by evaluating them against stored rules in a knowledge base. This advance evaluation identifies potential performance-degrading operations (table scans, implicit conversions, excessive joins) and allows for corrective actions to be taken before the query actually runs, preventing resource waste rather than detecting it after the fact

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements a feedback mechanism where query plans are evaluated against a knowledge base of rules, and the results of this evaluation are used to generate recommendations for improvement. The feedback loop allows developers to see which operations are degrading performance and how to fix them, enabling continuous improvement of query efficiency

Inventive Principle:
Principle #23Feedback

2Measurement precision

If a query plan evaluator analyzes every operation against predefined rules, then performance-degrading operations can be identified accurately, but the evaluation process itself adds complexity to the system

Engineering Contradiction:
Improveperformance evaluation accuracyVSAvoidevaluation system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The evaluation system is segmented into distinct components: a knowledge base storing individual rules about performance-degrading operations, an evaluator that applies these rules to query plans, and a recommendation generator. This segmentation allows the system to maintain high measurement precision through comprehensive rule coverage while managing complexity through modular architecture where each rule can be independently maintained and updated

Inventive Principle:
Principle #1Segmentation

3Ease of operation

If the query plan evaluator provides detailed recommendations for fixing performance issues, then coding practices can be improved, but additional processing time is required to generate these recommendations

Engineering Contradiction:
Improvecoding practice qualityVSAvoidevaluation processing time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The system applies partial action by evaluating query plans against a subset of relevant rules from the knowledge base rather than all possible rules. The evaluator identifies performance-degrading operations and provides recommendations for the most critical issues, allowing for improved coding practices without requiring exhaustive analysis of every possible optimization angle

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS8666970B2Query plan enhancement
Publication Date: 2014.03.04 ACCENTURE GLOBAL SERVICES LTD
  • US8666970B2 patent drawing
  • US8666970B2 patent drawing
  • US8666970B2 patent drawing

AI summary

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for analyzing and enhancing query plans. In one aspect, a method includes receiving a query plan, automatically identifying, by one or more computers, one or more operations included within the query plan that may degrade the performance of a query, and providing a report that identifies the identified operations as performance degrading operations.