Patent ID: 7890497

Claim:
A method for refreshing materialized views comprising: storing a plurality of materialized views; for each materialized view of said plurality of materialized views: submitting to an optimizer at least one set of one or more refresh expressions for refreshing said each materialized view, wherein said at least one set of one or more refresh expressions refreshes said each materialized view according to a particular refresh technique, wherein each refresh expression of said at least one set of one or more refresh expressions is a DML statement; and said optimizer generating, for each refresh expression of said at least one set of one or more refresh expressions: a query execution plan and a query execution cost for executing said query execution plan; wherein for at least one materialized view of said plurality of materialized views, submitting to said optimizer at least one set of one or more refresh expressions includes submitting a plurality of sets of one or more refresh expressions, each set of one or more refresh expressions of said plurality of sets of one or more refresh expressions refreshing said at least one materialized view according to a respective refresh technique, wherein the respective refresh technique of said each set of one or more refresh expressions is different than the respective refresh technique of any other set of one or more refresh expressions of said plurality of sets of one or more refresh expressions; wherein said plurality of sets of one or more refresh expressions includes at least two different sets of one or more refresh expressions that refresh said at least one materialized view according to at least two different incremental refresh techniques; based on the query execution costs estimated by said optimizer, estimating a cost of each of a plurality of schedules for refreshing the plurality of materialized views; choosing a preferred schedule from the plurality of schedules based on the estimated costs of the plurality of schedules; and refreshing the plurality of materialized views according to the preferred schedule; wherein the method is performed by one or more computing devices.