Patent ID: 7415455

Claim:
A method for triggering an update of statistics data used by a query optimizer of a relational database management system (RDBMS) for executing a query request on a relational database, the query request comprising at least one SQL operation, wherein the relational database comprises at least one database table and a reference database table with up-to-date statistics data, the method comprising: determining a system independent reference value for each of the at least one SQL operation using the up-to-date statistics data; determining a system dependent reference value for each of the at least one SQL operation by executing the SQL operation on the reference database table; calculating a conversion factor for each of the at least one SQL operation, the conversion factor being operable to relate the system independent reference value to the system dependent reference value; determining a system independent nominal performance value for each of the at least one SQL operation; determining a system dependent nominal operator performance value for each of the at least one SQL operation based on the system independent nominal performance value and the conversion factor; determining a system dependent nominal performance value for the query request based on the system dependent nominal operator performance value of each of the at least one SQL operation; measuring an actual performance value by executing the query request on the at least one database table of the relational database; tracking the number of times the query request is executed within a given period of time; determining an average actual performance value from the measured actual performance values of the query request executed within the period of time and from the tracked number of times; comparing the average actual performance value with the system dependent nominal performance value; calculating for each of the at least one database table an update cost value; calculating for each of the at least one database table a cost saving value; comparing the update cost value with the cost saving value for each of the at least one database table; and updating the statistics data.