適用於:SQL Server
Azure SQL 資料庫
Azure SQL 受控執行個體
Azure Synapse Analytics
Analytics Platform System (PDW)
傳回工作負載群組統計數據和工作負載群組目前的記憶體內部設定。
注意
若要從 Azure Synapse Analytics 或 Analytics Platform System (PDW) 呼叫此專案,請使用名稱 sys.dm_pdw_nodes_resource_governor_workload_groups。 Azure Synapse Analytics 的無伺服器 SQL 集區不支援此語法。
| 資料行名稱 | 資料類型 | 描述 |
|---|---|---|
group_id |
int | 工作負載群組的標識碼。 不可為 Null。 |
name |
sysname | 工作負載群組的名稱。 不可為 Null。 |
pool_id |
int | 資源集區的標識碼。 不可為 Null。 |
external_pool_id |
int |
適用於:從 SQL Server 2016 (13.x) 開始。 外部資源集區的標識碼。 不可為 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不同,這是可設定的設定。 如需詳細資訊,請參閱 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 | 自從重設統計數據以來,單一要求的記憶體授與大小上限,以 KB 為單位。 不可為 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。 若要執行 Database Engine 外部的程式代碼(例如擴充預存程式和分散式查詢),線程必須執行在非先佔式排程器的控制之外執行。 若要這樣做,背景工作角色會切換到先占模式。 |
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 是 integer,可能的範圍為 1-100。 如需詳細資訊,請參閱 CREATE WORKLOAD GROUP。不可為 Null。 |
tempdb_data_space_kb |
bigint |
適用於:從 SQL Server 2025 (17.x) 起 工作負載群組中所有會話在數據檔中 tempdb 耗用的目前數據空間,以 KB 為單位。 可為空值。 |
peak_tempdb_data_space_kb |
bigint |
適用於:從 SQL Server 2025 (17.x) 起 伺服器啟動之後,工作負載群組中所有會話所耗用 tempdb 的尖峰數據空間,或因為資源管理員統計數據重設,以 KB 為單位。 可為空值。 |
total_tempdb_data_limit_violation_count |
bigint |
適用於:從 SQL Server 2025 (17.x) 起 要求中止並出現錯誤 1138 的次數,因為它會超過工作負載群組 tempdb 數據空間耗用量的限制。 可為空值。 |
pdw_node_id |
int |
適用於:Azure Synapse Analytics、Analytics Platform System (PDW) 此散發節點的標識碼。 |
備註
此動態管理檢視會顯示記憶體內部設定。 若要查看預存的組態元數據,請使用 sys.resource_governor_workload_groups 目錄檢視。
此檢視可以與 sys.dm_resource_governor_resource_pools 聯結,以取得資源集區名稱。
統計數據會在 Database Engine 的最後一個開始之後進行追蹤。 執行 時ALTER RESOURCE GOVERNOR RESET STATISTICS,會重設下列計數器:statistics_start_time、、total_request_counttotal_queued_request_counttotal_cpu_limit_violation_counttotal_cpu_usage_msmax_request_cpu_time_mstotal_lock_wait_counttotal_lock_wait_time_mstotal_query_optimization_counttotal_suboptimal_plan_generation_count、、total_reduced_memgrant_countmax_request_grant_memory_kb、 peak_tempdb_data_space_kb和 。total_tempdb_data_limit_violation_count 計數器 statistics_start_time 會設定為目前的系統日期和時間,而其他計數器則設定為零 (0)。
權限
需要 VIEW SERVER STATE 權限。
SQL Server 2022 和更新版本的權限
需要伺服器上 VIEW SERVER PERFORMANCE STATE 許可權。