Autonomic refresh of a materialized query table in a computer database
View Patent ↗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.
1. A method for a refreshing a materialized query table (MQT) in a database, the method comprising the steps of:
parsing a query to identify a database table with a MQT in deferred maintenance;
determining whether to update the MQT in deferred maintenance to execute the query by performing the steps of:
estimating a time to execute the query over a base table corresponding to the MQT in deferred maintenance;
estimating a time to update the MQT in deferred maintenance;
comparing the estimated time to update the MQT in deferred maintenance and the estimated time to execute the query over the base tables;
updating the MQT in deferred maintenance where the estimated time to update the MQT is less than the time to execute the query; and
executing the query over the now updated MQT in deferred maintenance.
2. The method of claim 1 further comprising the step of considering time of trigger events to estimate the time for a query to access the data.
3. The method of claim 1 further comprising the step of considering results stored in a staging table to estimate the time to refresh the MQT.