Patent ID: 8429097

Claim:
A method, comprising: performing, by a computer: storing data on behalf of a plurality of subscribers in a shared storage system; receiving input specifying one or more service level parameter values, each parameter value specifying a quantity of a respective resource that can be allocated for use in executing one or more queries in the shared storage system; receiving a plurality of queries directed to the data; and executing the plurality of queries, wherein said executing comprises: monitoring resource utilization, wherein the monitored resource utilization is resource utilization by the plurality of queries of resources for which service level parameter values have been specified, wherein said monitoring is performed during execution of the plurality of queries; determining whether the resource utilization by the plurality of queries is consistent with the one or more specified service level parameter values; and in response to determining that the resource utilization by one or more of the plurality of queries is not consistent with the one or more specified service level parameter values, attempting to correct the determined inconsistency, wherein said attempting comprises applying a reinforcement learning technique in conjunction with one or more domain-specific constraints to automatically update an execution parameter of at least one of the plurality of queries such that a result of updating the execution parameter is consistent with the one or more domain-specific constraints, wherein an execution parameter is a modifiable parameter affecting execution of the plurality of queries, and wherein the update is performed during execution of the plurality of queries.