System and method for addressing inefficient query processing
First Claim
1. A method of analyzing query performance based on predicate usage, comprising:
- collecting performance statistics for database queries comprising database statements entered by end-users having different predicate combinations;
organizing the performance statistics based on the different predicate combinations of the database queries;
analyzing performance of a subset of the database queries having different predicate combinations that include common predicates;
generating analysis results; and
identifying a problem from a list consisting of;
missing statistics on an added column, missing index on new column, missing multi-column index on a fact table, and predicate contains a non-indexable operator.
3 Assignments
0 Petitions
Accused Products
Abstract
A system and method for analyzing predicate usage and proposing solutions to improve query performance. The system comprises a system for collecting performance statistics for database queries; an aggregation system that organizes the performance statistics based on predicate combinations used in the database queries; and an evaluation system that compares the performances of queries having similar predicate combinations. Further features include a problem identification system that identifies a predicate, which when added to a query, results in a low performing query, and a solution proposal system that automatically proposes a solution to address the low performing query.
-
Citations
6 Claims
-
1. A method of analyzing query performance based on predicate usage, comprising:
-
collecting performance statistics for database queries comprising database statements entered by end-users having different predicate combinations; organizing the performance statistics based on the different predicate combinations of the database queries; analyzing performance of a subset of the database queries having different predicate combinations that include common predicates; generating analysis results; and identifying a problem from a list consisting of;
missing statistics on an added column, missing index on new column, missing multi-column index on a fact table, and predicate contains a non-indexable operator. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method of analyzing query performance based on predicate usage, comprising:
-
collecting performance statistics for database queries comprising database statements entered by end-users having different predicate combinations; organizing the performance statistics based on the different predicate combinations of the database queries; analyzing performance of a subset of the database queries having different predicate combinations that include common predicates, wherein analyzing performance includes the step of calculating an estimate improvement for adding a predicate given by;
Estimated improvement=Time−
(((count/second with added predicate)/(count/second))*Time), where Time is a sum of time for database queries containing an added predicate, count/second is a rate for running a database query without the added predicate and count/second with added predicate is a rate for running the database query with the added predicate; andgenerating analysis results.
-
Specification