Thor Logo dbatools

Get-DbaRgWorkloadGroup

View Source
Chrissy LeMaire (@cl), netnerds.net
Windows, Linux, macOS

Synopsis

Retrieves Resource Governor workload groups from SQL Server instances

Description

Retrieves Resource Governor workload groups along with their configuration settings including CPU limits, memory grants, and parallelism controls. Workload groups define how resource requests are classified and managed within resource pools, allowing DBAs to control resource consumption for different types of workloads. This function is essential for monitoring and troubleshooting Resource Governor configurations to ensure optimal performance isolation between competing workloads.

Syntax

Get-DbaRgWorkloadGroup
    [[-SqlInstance] <DbaInstanceParameter[]>]
    [[-SqlCredential] <PSCredential>]
    [[-InputObject] <ResourcePool[]>]
    [-EnableException]
    [<CommonParameters>]

 

Examples

 

Example: 1
PS C:\> Get-DbaRgWorkloadGroup -SqlInstance sql2017

Gets the workload groups on sql2017

Example: 2
PS C:\> Get-DbaResourceGovernor -SqlInstance sql2017 | Get-DbaRgResourcePool | Get-DbaRgWorkloadGroup

Gets the workload groups on sql2017

Optional Parameters

-SqlInstance

The target SQL Server instance or instances

PropertyValue
Alias
RequiredFalse
Pipelinetrue (ByValue)
Default Value
-SqlCredential

Login to the target instance using alternative credentials. Accepts PowerShell credentials (Get-Credential).
Windows Authentication, SQL Server Authentication, Active Directory - Password, and Active Directory - Integrated are all supported.
For MFA support, please use Connect-DbaInstance.

PropertyValue
Alias
RequiredFalse
Pipelinefalse
Default Value
-InputObject

Accepts resource pool objects from Get-DbaRgResourcePool to retrieve workload groups from specific pools only.
Use this to filter workload groups when you need to examine groups within particular resource pools instead of all workload groups across the instance.

PropertyValue
Alias
RequiredFalse
Pipelinetrue (ByValue)
Default Value
-EnableException

By default, when something goes wrong we try to catch it, interpret it and give you a friendly warning message.
This avoids overwhelming you with “sea of red” exceptions, but is inconvenient because it basically disables advanced scripting.
Using this switch turns this “nice by default” feature off and enables you to catch exceptions with your own try/catch.

PropertyValue
Alias
RequiredFalse
Pipelinefalse
Default ValueFalse

Outputs

Microsoft.SqlServer.Management.Smo.WorkloadGroup

Returns one WorkloadGroup object per workload group found in the specified resource pools. Each workload group object includes configuration settings for resource consumption limits and request handling behavior.

Default display properties (via Select-DefaultView):

  • ComputerName: The computer name of the SQL Server instance
  • InstanceName: The SQL Server instance name
  • SqlInstance: The full SQL Server instance name (computer\instance)
  • Id: Unique identifier for the workload group
  • Name: Name of the workload group
  • ExternalResourcePoolName: Name of the associated external resource pool (if applicable)
  • GroupMaximumRequests: Maximum number of concurrent requests allowed in the workload group (0 = unlimited)
  • Importance: Importance level of requests in this group (Low, Medium, High)
  • IsSystemObject: Boolean indicating if this is a system-defined workload group
  • MaximumDegreeOfParallelism: Maximum number of processors for parallel query execution (0 = unlimited)
  • RequestMaximumCpuTimeInSeconds: Maximum CPU time in seconds per request (0 = unlimited)
  • RequestMaximumMemoryGrantPercentage: Maximum memory grant as percentage of resource pool memory
  • RequestMemoryGrantTimeoutInSeconds: Timeout in seconds for memory grant requests

Additional properties available (from SMO WorkloadGroup object):

  • ClassifierFunction: Name of the scalar classifier function (if any)
  • CreateDate: DateTime when the workload group was created
  • ModifyDate: DateTime when the workload group was last modified
  • Parent: Reference to the parent ResourcePool object
  • State: Current state of the workload group object All properties from the base SMO object are accessible using Select-Object *.