×

Enforcing system resource usage limits on query requests based on grouping query requests into workgroups and assigning workload groups to resource pools

  • US 8,065,682 B2
  • Filed: 02/27/2007
  • Issued: 11/22/2011
  • Est. Priority Date: 02/27/2007
  • Status: Active Grant
First Claim
Patent Images

1. A system for enforcing system resource usage limits on query requests accessing a database based on grouping query requests into workload groups and based on assigning workload groups to resource pools, the system comprising:

  • at least one processor; and

    one or more computer storage devices having stored thereon computer executable instructions that, when executed by the at least one processor, implement a method, comprising;

    defining a plurality of workload groups, wherein each workload group is configured to be assigned one or more query requests and comprises one or more resource policies that govern access permitted to the one or more query requests to use system resources that are made available to the workload group, wherein the resource policies place limits on the use of system resources by the one or more query requests, the plurality of workload groups in a default workload group and other workload groups;

    defining a plurality of resource pools, wherein each resource pool is configured to be assigned one or more of the plurality of workload groups and defines an arrangement of system resources that are available to the one or more workload groups, and wherein each resource pool comprises one or more pool policies that govern resource consumption by query requests whenever a plurality of workload groups are assigned to the resource pool, the plurality of resource pools including a default resource pool that defines an arrangement of system resources available to the default workload group;

    defining a classifier function that associates incoming query requests with the plurality of workload groups based on attributes of the incoming query requests, the classifier function associating any incoming query request not associated any of the other workload groups to the default workload group;

    receiving a particular query request;

    associating the particular query request with a particular workload group of the plurality of workload groups based, at least in part, on the classifier function and an attribute of the particular query request, the particular workload group comprising the default workload group whenever it is determined that the particular query request is not associated with any of the other workload groups;

    assigning the particular workload group to a particular resource pool of the plurality of resource pools that is associated with a portion of system resources, thereby making the portion of the system resources available to the particular workload group, the particular resource pool comprising the default resource pool when the particular workload group comprises the default workload group; and

    governing access permitted to the particular query request to system resources using a particular resource policy of the particular workload group and a particular pool policy of the particular resource pool, wherein the governing includes;

    limiting the portion of the system resources available to the particular workload group as per the particular pool policy; and

    limiting the use of the portion of system resources available to the particular workload group by the particular query request as per the particular resource policy.

View all claims
  • 3 Assignments
Timeline View
Assignment View
    ×
    ×