Patent ID: 7877381
Filing Date: 2011-01-25
Classification: G06F

Abstract:
1. A computer implemented method for progressively refining a federated query execution plan in a federated data system, the computer implemented method comprising: executing a federated query according to a federated query execution plan for the federated data system, wherein the federated data system has a federated server, a plurality of data sources including a federated database and a plurality of remote databases, and further wherein the federated data system sends distributed requests to local databases and remote databases for processing, and wherein the remote databases do not store statistical data so that the federated query execution plan is initially compiled without knowledge about the remote databases; and refining the federated query execution plan during execution of the federated query, wherein refining the federated query execution plan during execution of the federated query comprises: wherein a plurality of checkpoints are placed in the query execution plan after a first round of re-optimization so that so that all other queries to any remote database are configured to also trigger re-optimizations and all intermediate results for all rounds of re-optimization are mapped back into the query execution plan; and wherein a CHECK operator identifies whether an actual cardinality is within a validity range and triggers at least one re-optimization when the actual cardinality is not within the validity range, and further comprising: repeating the placing, optimizing, recompiling, and re-executing steps until a query result is achieved; wherein in a plurality of multiple re-optimizations of a query with a limited initial knowledge about a plurality of data, each re-optimization adds an actual knowledge about a single table only, and where |σ wherein compensation for the worse overall query performance is made by introducing several rounds of re-optimization, each round adding an additional knowledge about additional parts of the plan until a whole plan is covered with an actual knowledge and a final access plan is developed in accordance with the following sequence: so that the join order in 4) is identical to the join order in 1).