Method for efficient query execution using dynamic queries in database environments
First Claim
1. A method implemented by a computing device providing query execution plans for distributed database environments having partitioned views comprising the steps of:
- analyzing offered queries to determine if the offered queries comprise predicate expressions or sub-queries;
providing dynamic start-up filters for inclusion in the query execution plans for the distributed database environments having the partitioned views,removing redundant partitions from the query execution plans by applying the dynamic start-up filters, wherein the dynamic start-up filters are chosen based on the predicate expressions found in the offered queries;
classifying the offered queries according to whether the offered queries comprise the predicate expressions and the sub-queries;
generating start-up expressions for the offered queries having the predicate expressions;
generating start-up conjunctions such that an array of conjunction expressions is created for each predicate expression of the predicate expressions found in the offered queries and;
storing the generated start-up conjunctions in a memory.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method allowing for optimization of query execution in database environments is provided. In an illustrative implementation, a database having distributed partitioned views is provided such that queries may initiate at any of the participating data stores. In operation, an offered query is analyzed to determine if it has predicate expression and/or sub-queries. Using this information the expressions and/or sub-queries are analyzed and processed to determine if appropriate start-up filters are available for the offered query. The start-up filters are applied to the query such that during compile and/or run time, redundant partitions in the distributed partitioned database environment are eliminated during query execution.
26 Citations
6 Claims
-
1. A method implemented by a computing device providing query execution plans for distributed database environments having partitioned views comprising the steps of:
-
analyzing offered queries to determine if the offered queries comprise predicate expressions or sub-queries; providing dynamic start-up filters for inclusion in the query execution plans for the distributed database environments having the partitioned views, removing redundant partitions from the query execution plans by applying the dynamic start-up filters, wherein the dynamic start-up filters are chosen based on the predicate expressions found in the offered queries; classifying the offered queries according to whether the offered queries comprise the predicate expressions and the sub-queries; generating start-up expressions for the offered queries having the predicate expressions; generating start-up conjunctions such that an array of conjunction expressions is created for each predicate expression of the predicate expressions found in the offered queries and; storing the generated start-up conjunctions in a memory. - View Dependent Claims (2, 3, 4)
-
-
5. A computer-implemented system providing enhanced query execution plans for distributed database environments having partitioned views comprising:
-
a processor; a dynamic execution plan system, the dynamic execution plan system analyzing offered queries and processing the offered queries to determine if the offered queries comprises predicate expressions or sub-queries; a dynamic start-up filter generation system cooperating with the dynamic execution plan system to produce query execution plans having dynamic start-up filters for the distributed database environments having the partitioned views, to generate start-up conjunctions such that an array of conjunction expressions is created for each predicate expression of the predicate expressions found in the offered queries, and to store the generated start-up conjunctions in a memory, wherein the dynamic start-up filters are chosen based on at least one predicate expression in the offered queries; and the dynamic start-up filter generation system further comprises a plurality of functions and operations to identify appropriate the dynamic start-up filters for the offered queries, the dynamic start-up filters comprising functions and operations to remove redundant steps from the query execution plans.
-
-
6. A method implemented by a computing device providing enhanced query execution plans comprising:
-
providing dynamic start-up filters, the dynamic start-up filters being processed at run or compile time to remove redundant processing steps from the query execution plans based on data provided in offered queries, wherein the offered queries comprise at least one predicate expression and wherein the dynamic start-up filters are based on the at least one predicate expression; applying the dynamic start-up filters on the offered queries; classifying the offered queries according to whether the offered queries comprise predicate expressions and sub-queries; generating start-up expressions for the offered queries having the predicate expressions; generating start-up conjunctions such that an array of conjunction expressions is created for each predicate expression of the predicate expressions found in the offered queries; and
storing the generated start-up conjunctions in a memory.
-
Specification