SYSTEM, METHOD, AND PROGRAM PRODUCT FOR INTEGRATING DATABASES
First Claim
1. A system comprising:
- a first virtual table corresponding to a first data;
a second virtual table corresponding to a second data;
a common table that is associated with the first and second virtual tables;
a list with information about associations between the first and second virtual tables and the common table;
a generating section for generating two or more access plans from a database query on the common table, the two or more access plans involving at least one of the first and second virtual tables in accordance with the list; and
a selecting section for selecting one of the two or more access plans generated by the generating section to be used to execute the database query.
1 Assignment
0 Petitions
Accused Products
Abstract
A system for integrating databases comprises a first virtual table, a second virtual table, a common table, a list, a generating section, and a selecting section. The first virtual table corresponds to a first data. The second virtual table corresponds to a second data. The common table is associated with the first and second virtual tables. The list indicates information about associations between the first and second virtual tables and the common table. The generating section generates two or more access plans from a database query on the common table. The two or more access plans involve at least one of the first and second virtual tables in accordance with the list. The selecting section selects one of the two or more access plans generated by the generating section to be used to execute the database query.
-
Citations
23 Claims
-
1. A system comprising:
-
a first virtual table corresponding to a first data; a second virtual table corresponding to a second data; a common table that is associated with the first and second virtual tables; a list with information about associations between the first and second virtual tables and the common table; a generating section for generating two or more access plans from a database query on the common table, the two or more access plans involving at least one of the first and second virtual tables in accordance with the list; and a selecting section for selecting one of the two or more access plans generated by the generating section to be used to execute the database query. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16)
-
-
17. A method comprising:
-
receiving a query for a database, wherein the query indicates a common table, which is associated with a plurality of virtual tables; using a dependency list to determine names of a first and a second virtual table of the plurality of virtual tables, wherein the dependency list indicates information about associations between the common table and the plurality of virtual tables; writing a first rewrite of the query for the first virtual table; generating a first access plan based on the first rewrite of the query; writing a second rewrite of the query for the second virtual table; generating a second access plan based on the second rewrite of the query; estimating a first cost of the first access plan; estimating a second cost of the second access plan; storing the first and second access plans along with the first and second costs; and selecting either the first access plan or the second access plan to execute the received query, wherein the first virtual table corresponds to first data and the second virtual table corresponds to second data. - View Dependent Claims (18, 19, 20, 21)
-
-
22. A program product encoded in one or more machine-readable, which when executed by a machine causes the machine to perform operations that comprise:
-
receiving a query for a database, wherein the query indicates a common table, which is associated with a plurality of virtual tables; using a dependency list to determine names of a first and a second virtual table of the plurality of virtual tables, wherein the dependency list indicates information about associations between the common table and the plurality of virtual tables; writing a first rewrite of the query for the first virtual table; generating a first access plan based on the first rewrite of the query; writing a second rewrite of the query for the second virtual table; generating a second access plan based on the second rewrite of the query; estimating a first cost of the first access plan; estimating a second cost of the second access plan; storing the first and second access plans along with the first and second costs; and selecting either the first access plan or the second access plan to execute the received query. - View Dependent Claims (23)
-
Specification