Autonomic refresh of a materialized query table in a computer database
AssigneeInternational Business Machines Corporation
InventorJohn M. Santosuosso
Life of this patent
Estimating the term…
Abstract
A method autonomically refreshes a materialized query table (MQT) in a computer database to improve database performance and utility. In preferred embodiments, the query optimizer autonomically initiates a refresh of MQT depending on an estimated time for the query to access the base tables. In other preferred embodiments, the query optimizer estimates the time for the query to access the base tables and compares it to the estimated time to refresh the MQT to determine whether to refresh the MQT and run the query over the MQT rather than the base tables.
Claims7
An apparatus comprising:
- at least one processor;
- a memory coupled to the at least one processor;
- a database residing in the memory having data;
- a query optimizer residing in the memory that parses a query to identify a base table of the database with a materialized query table (MQT) in deferred maintenance;
- and
- wherein the query optimizer autonomically determines whether to update the MQT or execute the query over the base table by estimating a time to execute the query over the base table corresponding to the MQT, estimating a time to update the MQT, comparing the estimated time to update the MQT and the estimated time to execute the query over the base table;
- and
- wherein the query optimizer updates the MQT where the estimated time to update the MQT is less than the time to execute the query over the base table;
- and executes the query over the updated MQT.
A program product comprising:
- a query optimizer that parses a query to identify a base table with a materialized query table (MQT), wherein the query optimizer autonomically determines whether to update the MQT or execute the query over the base table by estimating a time to execute the query over the base table corresponding to the MQT, estimating a time to update the MQT, comparing the estimated time to update the MQT and the estimated time to execute the query over the base table, wherein the query optimizer updates the MQT where the estimated time to update the MQT is less than the time to execute the query;
- and executes the query over the updated MQT;
- and
- non-transitory computer-recordable media bearing the query optimizer.
An apparatus comprising:
- at least one processor;
- a memory coupled to the at least one processor;
- a database residing in the memory having data;
- a query optimizer residing in the memory that parses a query to identify a base table of the database with a materialized query table (MQT), meaning the refresh of the MQT has been deferred;
- wherein the query optimizer autonomically determines whether to update the MQT or execute the query over the base table by estimating a time to execute the query over the base table corresponding to the MQT, estimating a time to update the MQT, comparing the estimated time to update the MQT and the estimated time to execute the query over the base table;
- wherein the query optimizer updates the MQT since the estimated time to update the MQT is less than the time to execute the query over the base table;
- and executes the query over the updated MQT;
- wherein the query optimizer considers a time of trigger events to estimate the time to refresh the MQT;
- and
- wherein the query optimizer considers results stored in a staging table to estimate the time to refresh the MQT.
Dependencies are inferred from the claim text.