Query optimization system and method
First Claim
1. An apparatus for implementing a database query system, the apparatus comprising:
- a processor for executing instructions; and
a memory device having thereon modules of executable and operational data for execution by the processor, the modules comprising;
a schema mapping module executable on the processor to express a schema mapping between a plurality of heterogeneous database schemas containing at least partially replicated information; and
a query translation module executable on the processor to communicate with the schema mapping module and translate a received query executable on one of the plurality of heterogeneous database schemas to a substantially equivalent query executable on another of the plurality of heterogeneous database schemas.
1 Assignment
0 Petitions
Accused Products
Abstract
A query optimization system and method are particularly suitable for generating a least cost query plan expressible on a plurality of heterogeneous database schemas that are restructuring views of each other. The query optimization system receives a query against one of the tables and converts it to a plurality of alternate queries, each formatted for the particular schema of a different one of the plurality of heterogeneous tables. In generating the alternate queries, the system may utilize SchemaSQL view definitions and may employ restructuring operators expressing and capable of conducting a restructuring of a table into a restructuring view of the table. A middleware system involving a canonical schema and a virtual canonical table may also be employed to express a mapping between restructuring views for purposes of query conversion. The alternate queries may be costed and optimized and a query plan returned that has a least cost or service time involved.
-
Citations
30 Claims
-
1. An apparatus for implementing a database query system, the apparatus comprising:
-
a processor for executing instructions; and
a memory device having thereon modules of executable and operational data for execution by the processor, the modules comprising;
a schema mapping module executable on the processor to express a schema mapping between a plurality of heterogeneous database schemas containing at least partially replicated information; and
a query translation module executable on the processor to communicate with the schema mapping module and translate a received query executable on one of the plurality of heterogeneous database schemas to a substantially equivalent query executable on another of the plurality of heterogeneous database schemas. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method for implementing a database query system, the method comprising:
-
expressing a schema mapping between a plurality of heterogeneous database schemas containing at least partially replicated information; and
translating a received query executable on one of the plurality of heterogeneous database schemas to a substantially equivalent query executable on another of the plurality of heterogeneous database schemas using the schema mapping. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. An article of manufacture comprising a program storage medium readable by a processor and embodying one or more instructions executable by the processor to perform a method for implementing a database query system, the method comprising:
-
expressing a schema mapping between a plurality of heterogeneous database schemas containing at least partially replicated information; and
translating a received query executable on another of the plurality of heterogeneous database schemas to substantially equivalent query executable on another of the plurality of heterogeneous database schemas using the schema mapping. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30)
-
Specification