sys.dm_resource_governor_workload_groups (Transact-SQL)

适用于:SQL ServerAzure SQL 数据库Azure SQL 托管实例Azure Synapse AnalyticsAnalytics Platform System (PDW)

返回工作负荷组统计信息和工作负荷组当前在内存中的配置。 此视图可以与 sys.dm_resource_governor_resource_pools 联接以获取资源池名称。

注意

若要从 Azure Synapse Analytics 或 Analytics Platform System (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 适用于:从 2016 SQL Server (13.x) 开始。

外部资源池的 ID。 不可为 null。
statistics_start_time datetime 为工作负荷组重置统计信息集合的时间。 不可为 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 不同,后者是一个可配置的设置。 有关详细信息,请参阅 CPU Threshold Exceeded 事件类
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 此工作负荷组中请求的相对重要性的当前配置值。 重要性为以下值之一,默认值为“中”:“低”、“中”或“高”。

不可为 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 适用于:从 2012 SQL Server (11.x) 开始。

工作负荷组的有效最大并行度。 不可为 null。
total_cpu_usage_preemptive_ms bigint 适用于:从 2016 SQL Server (13.x) 开始。

工作负荷组处于抢占模式计划时使用的总 CPU 时间(以毫秒为单位)。 不可为 null。

要执行在 SQL Server 以外的代码(例如,扩展存储过程和分布式查询),则必须在非抢先计划程序的控制范围以外执行该线程。 若要这样做,工作线程将切换到抢先模式。
request_max_memory_grant_percent_numeric float 适用于:Azure SQL 托管实例,从 2019 SQL Server 开始 (15.x) 。

单个请求的最大内存授予的当前设置,以百分比表示。 与返回integer request_max_memory_grant_percent 类似,request_max_memory_grant_percent_numeric返回 float。 从 2019 SQL Server (15.x) 开始,参数REQUEST_MAX_MEMORY_GRANT_PERCENT接受可能范围为 0-100 的值,并将其存储为float数据类型。 在 2019 SQL Server (15.x) 之前,REQUEST_MAX_MEMORY_GRANT_PERCENTinteger范围为 1-100。 有关详细信息,请参阅 CREATE WORKLOAD GROUP

不可为 null。
pdw_node_id int 适用于:Azure Synapse Analytics、Analytics Platform System (PDW)

此分发所在节点的标识符。

备注

此动态管理视图显示了内存中配置。 若要查看存储的配置元数据,请使用 sys.resource_governor_workload_groups (Transact-SQL) 目录视图。

成功执行后ALTER RESOURCE GOVERNOR RESET STATISTICS,将重置以下计数器:statistics_start_time、、total_request_count、、total_cpu_limit_violation_counttotal_queued_request_counttotal_cpu_usage_msmax_request_cpu_time_mstotal_lock_wait_counttotal_lock_wait_time_mstotal_query_optimization_count、、、total_suboptimal_plan_generation_count、、total_reduced_memgrant_count和 。max_request_grant_memory_kb statistics_start_time计数器设置为当前系统日期和时间,其他计数器设置为零 (0) 。

权限

需要 VIEW SERVER STATE 权限。

SQL Server 2022 及更高版本的权限

需要对服务器具有 VIEW SERVER PERFORMANCE STATE 权限。

另请参阅