Workload groups
A workload group serves as a container for requests (queries, commands) that have similar classification criteria. Workload groups and workload group policies are a means of resource governance for incoming requests to the cluster, and allow aggregate monitoring of the requests. When a request's execution begins, the request is classified and assigned to a specific workload group. Then, the request runs using the policies assigned to the workload group.
Workload groups are defined at the cluster level. Up to 10 custom workload groups may be defined in addition to the two built-in workload groups.
Note
Requests that aren't queries or control commands aren't included in the scope of workload groups. For example: streaming ingestion requests.
Built-in workload groups
There are two pre-defined workload groups: the internal workload group and the default workload group.
Default workload group
Requests are classified into the default group when any of the following conditions is met:
- There are no criteria to classify a request.
- An attempt was made to classify the request into a non-existent group.
- A general classification failure has occurred.
You can:
- Change the criteria used for routing these requests.
- Change the policies that apply to the
defaultworkload group. - Classify requests into the
defaultworkload group.
Monitor what gets classified to the internal workload group and the statistics of those requests using the Monitoring recommendations.
Note
- A limit on the maximum amount of concurrent queries may have been defined on some cluster using the optional "Query throttling policy", which has been deprecated.
- In these clusters, the limit on the maximum amount of concurrent queries was automatically applied on the
defaultworkload group's request rate limits policies. - While the old limit applied only to queries, the new limit applies to all reqeusts - queries and control commands.
Internal workload group
The internal workload group is populated with requests that are for internal use only.
You can't:
- Change the criteria used for routing these requests.
- Change the policies that apply to the
internalworkload group. - Classify requests into the
internalworkload group.
You can monitor what gets classified to the internal workload group, and statistics of those requests.
Request classification
Classification of incoming requests into workload groups is based on a user-defined function.
Defining the criteria for classifying requests is done by defining a Request classification policy.
Workload group policies
The following policies can be defined per workload group:
- Request limits policy
- Request rate limit policy
- Request rate limits enforcement policy
- Request queuing policy
- Query consistency policy
Monitoring
System commands indicate which workload group requests were classified into. Use these commands to aggregate resources utilization by workload group for requests that have completed.
The same information can also be viewed and analyzed in Azure Monitor insights.
Control commands
Managing workload groups and their policies is done using workload groups control commands.
Feedback
Submit and view feedback for