Patent ID: 8924981

Claim:
A method for use in a database system, comprising: receiving, in the database system including at least one processor, requests to be executed in the database system; providing, in the database system, a plurality of the requests in at least one queue, the plurality of the requests including preemptive requests and timeshare requests; calculating, in the database system, first priority indicators for assignment to corresponding ones of the preemptive requests in the at least one queue, wherein the first priority indicators are calculated based on delay times, estimated execution times, and predefined priority levels of corresponding ones of the preemptive requests; calculating, in the database system, second priority indicators for assignment to corresponding ones of the timeshare requests, wherein the second priority indicators are calculated in a different manner from the first priority indicators and are based on delay times and predefined priority levels of corresponding ones of the timeshare requests; executing the plurality of the requests from the at least one queue in an order according to the calculated first and second priority indicators, wherein executing the timeshare requests comprises: selecting, based on the calculated second priority indicators, a highest priority one of the timeshare requests for execution; and selecting another of the timeshare requests to execute with the selected highest priority timeshare request, wherein selecting the another timeshare request is based on a determination that the another timeshare request shares resources by greater than some predefined amount with the selected highest priority timeshare request; monitoring, in the database system, progress of execution of a particular one of the plurality of the requests; adjusting, in the database system, resource estimates for the particular request based on the monitored progress, wherein the resource estimates include estimates of usage of at least one resource in the database system; and based on the adjusted resource estimates, adjusting, in the database system, a priority setting of the particular request to affect the execution of the particular request.