System and method for optimizing queries using materialized views and fast view matching
First Claim
1. A method for generating a substitute expression for a query expression comprising:
- receiving a query expression;
receiving a plurality of materialized views;
generating a candidate subset of the materialized views;
determining qualifying materialized views based on the candidate subset by determining whether an equijoin subsumption test is satisfied, determining whether a range subsumption test is satisfied, and determining whether a residual subsumption test is satisfied; and
generating a substitute expression for the query expression based on each qualifying materialized view.
2 Assignments
0 Petitions
Accused Products
Abstract
A transformation-based optimizer generates rewritings by applying local algebraic transformation rules on subexpressions of a query. Application of a transformation rule produces substitute expressions, logically equivalent to the original expression. View matching, that is, computing a subexpression from materialized views, is one such transformation rule. The view matching rule applies a view matching technique that determines whether the original query can be computed from one or more of the existing materialized views and, if so, generates substitute expressions. An index structure of materialized views is provided that quickly narrows the search to a set of candidate views on which the view matching techniques can be applied. The index structure, also called a filter tree, speeds up the search for applicable materialized views.
-
Citations
39 Claims
-
1. A method for generating a substitute expression for a query expression comprising:
-
receiving a query expression;
receiving a plurality of materialized views;
generating a candidate subset of the materialized views;
determining qualifying materialized views based on the candidate subset by determining whether an equijoin subsumption test is satisfied, determining whether a range subsumption test is satisfied, and determining whether a residual subsumption test is satisfied; and
generating a substitute expression for the query expression based on each qualifying materialized view. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A computer readable medium having computer-executable instructions for carrying out the method of:
-
receiving a query expression;
receiving a plurality of materialized views;
generating a candidate subset of the materialized views;
determining qualifying materialized view based on the candidate subset by determining whether an equijoin subsumption test is satisfied, determining whether a range subsumption test is satisfied, and determining whether a residual subsumption test is satisfied; and
generating a substitute expression for the query expression based on each qualifying materialized view. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
-
27. A server in a database system wherein the server generates a substitute expression for a query expression by (a) receiving the query expression;
- (b) receiving a plurality of materialized views;
(c) generating a candidate subset of the materialized views;
(d) determining qualifying materialized views based on the candidate subset by determining whether an equijoin subsumption test is satisfied, determining whether a range subsumption test is satisfied, and determining whether a residual subsumption test is satisfied; and
(e) generating a substitute expression for the query expression based on each qualifying materialized view. - View Dependent Claims (28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39)
- (b) receiving a plurality of materialized views;
Specification