資源調控器 DDL 和系統檢視

iSQlServer發表於2008-12-18

可以使用資源調控器 DDL 命令、目錄檢視和動態管理檢視來配置和檢視資源調控器的任何方面。除了特定於資源調控器的新檢視外,現有的系統檢視已經過修改以包括資源調控器的相關資訊。本主題概括了以下語句和檢視:

DDL 命令,其中包括用於工作負荷組、資源池和資源調控器的命令。

資源調控器系統檢視,其中包括目錄檢視和動態管理檢視。

經過更新以支援資源調控器的 SQL Server 系統檢視。

支援資源調控器的 SQL Server 事件類更新以及新事件類。

 DDL 語句
資源調控器提供了七個 DDL 命令,可用於配置資源調控器會話的任何一個方面。用於工作負荷組和資源池的命令包括 CREATE、ALTER 和 DROP 命令。此外,還有一個應用配置更改的 ALTER RESOURCE GOVERNOR RECONFIGURE 語句。

要注意的有關資源調控器 DDL 命令的重要事項如下:

CREATE、ALTER 和 DROP 語句用於處理儲存後設資料並且是事務語句。但是,完成這些語句並不能使更改生效;必須執行 ALTER RESOURCE GOVERNOR RECONFIGURE 語句來應用更改。

前面的語句可以是事務的一部分,以阻止多個使用者對相同配置同時執行修改。這是通過在語句中使用 BEGIN TRANSACTION 和 COMMIT TRANSACTION 來完成的。事務上的任何鎖定都顯示在 sys.dm_tran_locks 中,並且可以根據需要停止事務。
注意:
雖然不要求,但是強烈建議在使用資源調控器 DDL 語句時使用事務語法。但是,ALTER RESOURCE GOVERNOR DISABLE、ALTER RESOURCE GOVENOR RECONFIGURE 和 ALTER RESOURCE GOVERNOR RESET STATISTICS 不能作為使用者事務的一部分。
 


ALTER…RECONFIGURE 語句用於將後設資料載入到記憶體並可能會失敗。您無法回滾此語句。如果該語句失敗,對後設資料所做的更改將不會複製到記憶體。如果該語句成功,更改會生效。ALTER…RECONFIGURE 不是事務語句,並且更改不能回滾。

資源池命令
使用下表中介紹的命令可配置資源池。

DDL 語句  說明 
CREATE RESOURCE POOL
 建立資源池。
 
ALTER RESOURCE POOL
 更改資源池的配置。此語句用於將更改寫入已儲存的配置後設資料中。執行此語句後,必須執行 ALTER RESOURCE GOVERNOR 語句將後設資料資訊寫入記憶體中的配置。
 
DROP RESOURCE POOL
 刪除資源池。
 

資源調控器提供了四個資源池配置引數。它們分別是:

最小和最大 CPU 使用百分比。

最小和最大記憶體使用百分比。

根據對資源池配置所做的更改,可能存在轉換期和用於在此轉換期內處理活動或等待請求的已知行為。有關詳細資訊,請參閱資源調控器狀態。

工作負荷組命令
使用下表中介紹的命令可配置工作負荷組。

DDL 命令  說明 
CREATE WORKLOAD GROUP
 建立一個工作負荷組並將其與資源池關聯。
 
ALTER WORKLOAD GROUP
 更改工作負荷組的配置。此語句用於將更改寫入已儲存的配置後設資料中。執行此語句後,必須執行 ALTER RESOURCE GOVERNOR 語句將後設資料資訊寫入記憶體中的配置。
 
DROP WORKLOAD GROUP
 刪除工作負荷組。
 

資源調控器提供了以下六個工作負荷組配置引數:

請求的最大記憶體量。

請求的最大 CPU 百分比。

請求的資源超時。

請求的相對重要性。

工作負荷組的最大請求數。

工作負荷組將位於的資源池。

根據對工作負荷組配置所做的更改,會有用於在應用更改時處理活動或等待請求的已知行為。有關詳細資訊,請參閱資源調控器狀態。

資源調控器命令
使用下表中介紹的命令可配置資源調控器。

DDL 命令  說明 
ALTER RESOURCE GOVERNOR
 應用使用 ALTER 命令指定的配置更改,啟用或禁用 RESOURCE GOVERNOR 以及註冊分類器函式或重置統計資訊。
 

ALTER RESOURCE GOVERNOR 語句用於執行以下操作:

應用在發出 ALTER WORKLOAD GROUP 或 ALTER RESOURCE POOL 語句時指定的配置更改。

啟用或禁用資源調控器。這也用於應用配置更改。

註冊請求分類函式。

重置所有工作負荷組和資源池的統計資訊。

根據對資源調控器配置所做的更改,會有用於在應用更改時處理活動或等待請求的已知行為。有關詳細資訊,請參閱資源調控器狀態。

 資源調控器檢視
下面的目錄檢視和動態管理檢視特定於資源調控器。

目錄檢視
下表介紹了資源調控器目錄檢視。

名稱  說明 
sys.resource_governor_configuration
 返回儲存的資源調控器狀態。
 
sys.resource_governor_resource_pools
 返回已儲存的資源池配置。檢視的每一行都確定了一個池的配置。
 
sys.resource_governor_workload_groups
 返回儲存的工作負荷組配置。
 

動態管理檢視
下表介紹了資源調控器動態管理檢視。

名稱  說明 
sys.dm_resource_governor_workload_groups
 返回工作負荷組統計資訊和工作負荷組當前在記憶體中的配置。
 
sys.dm_resource_governor_resource_pools
 返回當前資源池狀態、資源池的當前配置以及資源池統計資訊的相關資訊。
 
sys.dm_resource_governor_configuration
 返回一個包含資源調控器當前在記憶體中的配置狀態的行。
 

 SQL Server 檢視
已更新若干 SQL Server 系統檢視並提供有關資源調控器的資訊。

動態管理檢視
下表介紹了 SQL Server 動態管理檢視。

名稱  說明 
sys.dm_exec_query_memory_grants
 返回已經獲得記憶體授予的查詢的有關資訊,或仍需執行記憶體授予的查詢的有關資訊。無需等待記憶體授予的查詢將不會出現在此檢視中。以下列是針對資源調控器新增的:

group_id

pool_id

is_small

ideal_memory_kb

 
sys.dm_exec_query_resource_semaphores
 返回當前查詢資源訊號量的狀態資訊。sys.dm_exec_query_resource_semaphores 提供常規的查詢執行記憶體狀態,可用於確定系統是否可以訪問足夠的記憶體。

以下列是針對資源調控器新增的:

pool_id

 
sys.dm_exec_sessions
 對於 SQL Server 中每個經過身份驗證的會話都返回相應的一行。

以下列是針對資源調控器新增的:

group_id

 

 
sys.dm_exec_requests
 返回有關在 SQL Server 中執行的每個請求的資訊。

以下列是針對資源調控器新增的:

group_id

 
sys.dm_exec_cached_plans
 針對 SQL Server 為了加快查詢執行而快取的每個查詢計劃返回一行。

以下列是針對資源調控器新增的:

pool_id

 
sys.dm_os_memory_brokers
 SQL Server 的內部分配使用 SQL Server 記憶體管理器。

以下列是針對資源調控器新增的:

pool_id

allocations_kb_per_sec

predicated_allocations_kb

overall_limit_kb

 
sys.dm_os_wait_stats
 返回正在執行的執行緒所遇到的等待數的有關資訊。您可以使用該檢視診斷 SQL Server 以及特定查詢和批處理的效能問題。
 

 SQL Server 事件類參考
已經更新若干 SQL Server 事件類並已新增新的事件類來支援資源調控器。

名稱  說明 
CPU Threshold Exceeded 事件類
 此事件類指示資源調控器檢測到查詢超出為 REQUEST_MAX_CPU_TIME_SEC 指定的 CPU 閾值。
 
PreConnect:Starting 事件類
 此事件類指示 LOGON 觸發器或資源調控器分類器函式開始執行的時間。
 
PreConnect:Completed 事件類
 此事件類指示 LOGON 觸發器或資源調控器分類器函式結束執行的時間。
 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16436858/viewspace-515843/,如需轉載,請註明出處,否則將追究法律責任。

相關文章