适用于:SQL Server
Azure SQL 数据库
Azure SQL 托管实例
Azure Synapse Analytics
Analytics Platform System (PDW)
返回工作负荷组统计信息和工作负荷组当前在内存中的配置。
注意
若要从 Azure Synapse Analytics 或 Analytics 平台系统(PDW)调用此名称,请使用名称 sys.dm_pdw_nodes_resource_governor_workload_groups。 Azure Synapse Analytics 中的无服务器 SQL 池不支持此语法。
| 列名称 | 数据类型 | 描述 | 
|---|---|---|
| group_id | int | 工作负荷组的 ID。 不可为 null。 | 
| name | sysname | 工作负荷组的名称。 不可为 null。 | 
| pool_id | int | 资源池的 ID。 不可为 null。 | 
| external_pool_id | int | 适用于:从 SQL Server 2016(13.x)开始。 外部资源池的 ID。 不可为 null。 | 
| statistics_start_time | 日期/时间 | 工作负荷组的统计信息收集开始的时间。 不可为 null。 | 
| total_request_count | bigint | 工作负荷组中已完成请求的累计计数。 不可为 null。 | 
| total_queued_request_count | bigint | 达到 GROUP_MAX_REQUESTS限制后排队的请求的累积计数。 不可为 null。 | 
| active_request_count | int | 当前请求计数。 不可为 null。 | 
| queued_request_count | int | 当前排队请求计数。 不可为 null。 | 
| total_cpu_limit_violation_count | bigint | 超出 CPU 限制的请求累计计数。 不可为 null。 | 
| total_cpu_usage_ms | bigint | 此工作负荷组的累计 CPU 使用情况,以毫秒为单位。 不可为 null。 | 
| max_request_cpu_time_ms | bigint | 单个请求的最大 CPU 使用情况,以毫秒为单位。 不可为 null。 注意: 这是一个度量值,与 request_max_cpu_time_sec不同,这是可配置的设置。 有关详细信息,请参阅 REQUEST_MAX_CPU_TIME_SEC。 | 
| blocked_task_count | int | 已阻塞任务的当前计数。 不可为 null。 | 
| total_lock_wait_count | bigint | 发生的锁等待累计计数。 不可为 null。 | 
| total_lock_wait_time_ms | bigint | 保留锁的已用时间累积总和(以毫秒为单位)。 不可为 null。 | 
| total_query_optimization_count | bigint | 此工作负荷组中的查询优化累计计数。 不可为 null。 | 
| total_suboptimal_plan_generation_count | bigint | 由于内存不足,在此工作负荷组中出现的不理想计划生成的累计计数。 不可为 null。 | 
| total_reduced_memgrant_count | bigint | 达到每个请求内存授予大小的最大限制的内存授予的累积计数。 不可为 null。 | 
| max_request_grant_memory_kb | bigint | 统计信息重置之后单个请求的最大内存授予大小,以千字节为单位。 不可为 null。 | 
| active_parallel_thread_count | bigint | 并行线程使用情况的当前计数。 不可为 null。 | 
| importance | sysname | 此工作负荷组中请求的相对重要性的当前配置值。 重要性是以下项之一, Medium为默认值:Low、Medium或High。不可为 null。 | 
| request_max_memory_grant_percent | int | 单个请求的最大内存授予的当前设置,以百分比表示。 不可为 null。 | 
| request_max_cpu_time_sec | int | 单个请求的最大 CPU 使用限制的当前设置,以秒为单位。 不可为 null。 | 
| request_memory_grant_timeout_sec | int | 单个请求的内存授予超时的当前设置,以秒为单位。 不可为 null。 | 
| group_max_requests | int | 工作负荷组中最大并发请求数的当前设置。 不可为 null。 | 
| max_dop | int | 为工作负荷组配置最大并行度。 默认值为 0,表示使用全局设置。 不可为 null。 | 
| effective_max_dop | int | 适用于:从 SQL Server 2012(11.x)开始。 工作负荷组的有效最大并行度。 不可为 null。 | 
| total_cpu_usage_preemptive_ms | bigint | 适用于:从 SQL Server 2016(13.x)开始。 在工作负荷组的抢先模式计划中使用的总 CPU 时间(以毫秒为单位)。 不可为 null。 若要执行数据库引擎外部的代码(例如扩展存储过程和分布式查询),线程必须从非抢占计划程序的控制之外执行。 若要这样做,工作线程将切换到抢先模式。 | 
| request_max_memory_grant_percent_numeric | 漂浮 | 适用于:Azure SQL 托管实例和从 SQL Server 2019(15.x)开始。 单个请求的最大内存授予的当前设置,以百分比表示。 该值类似于 request_max_memory_grant_percent。 但是,与返回request_max_memory_grant_percent值的integer不同,request_max_memory_grant_percent_numeric返回float值。 从 SQL Server 2019(15.x)开始,参数REQUEST_MAX_MEMORY_GRANT_PERCENT接受可能范围为 0-100 的值,并将其存储为float数据类型。 在 SQL Server 2019(15.x)之前,REQUEST_MAX_MEMORY_GRANT_PERCENT是一个可能范围为 1-100 的integer。 有关详细信息,请参阅 CREATE WORKLOAD GROUP。不可为 null。 | 
| tempdb_data_space_kb | bigint | 适用于:从 SQL Server 2025(17.x) 预览版开始 工作负荷组中所有会话在数据文件中消耗的 tempdb当前数据空间(以 KB 为单位)。 可以为 NULL。 | 
| peak_tempdb_data_space_kb | bigint | 适用于:从 SQL Server 2025(17.x) 预览版开始 自服务器启动或资源调控器统计信息重置以来,工作负荷组中的所有会话在数据文件中 tempdb消耗的峰值数据空间(以 KB 为单位)。 可以为 NULL。 | 
| total_tempdb_data_limit_violation_count | bigint | 适用于:从 SQL Server 2025(17.x) 预览版开始 请求中止并出现错误 1138 的次数,因为它会超出工作负荷组 tempdb 数据空间消耗的限制。 可以为 NULL。 | 
| pdw_node_id | int | 适用于:Azure Synapse Analytics、Analytics Platform System (PDW) 此分发所在节点的标识符。 | 
注解
此动态管理视图显示了内存中配置。 若要查看存储的配置元数据,请使用 sys.resource_governor_workload_groups 目录视图。
可以使用 sys.dm_resource_governor_resource_pools 联接此视图以获取资源池名称。
自数据库引擎上次启动以来,会跟踪统计信息。 执行时ALTER RESOURCE GOVERNOR RESET STATISTICS,将重置以下计数器:statistics_start_time、、、total_request_count、total_queued_request_count、total_cpu_limit_violation_counttotal_cpu_usage_msmax_request_cpu_time_mstotal_lock_wait_counttotal_lock_wait_time_mstotal_query_optimization_counttotal_suboptimal_plan_generation_counttotal_reduced_memgrant_count、 max_request_grant_memory_kbpeak_tempdb_data_space_kb和。total_tempdb_data_limit_violation_count 
              statistics_start_time计数器设置为当前系统日期和时间,其他计数器设置为零(0)。
权限
需要 VIEW SERVER STATE 权限。
SQL Server 2022 及更高版本的权限
需要对服务器具有 VIEW SERVER PERFORMANCE STATE 权限。