資源管理員 DDL 和系統檢視
您可以針對資源管理員的所有層面使用資源管理員的 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 GOVERNOR RECONFIGURE 和 ALTER RESOURCE GOVERNOR RESET STATISTICS 無法成為使用者交易的一部分。
ALTER…RECONFIGURE 陳述式會將中繼資料載入記憶體而且可能會失敗。不過,您無法回復此陳述式。如果此陳述式失敗,對中繼資料所做的變更就不會複製到記憶體。如果此陳述式成功,變更就會生效。ALTER RECONFIGURE 並非交易式,而且您無法回復變更。
資源集區的命令
您可以使用下表所述的命令來設定資源集區。
DDL 陳述式 |
描述 |
---|---|
建立資源集區。 |
|
變更資源集區的組態。這個陳述式會將變更寫入儲存的組態中繼資料。執行此陳述式之後,您必須執行 ALTER RESOURCE GOVERNOR 陳述式,將中繼資料資訊寫入記憶體中組態。 |
|
卸除資源集區。 |
資源管理員會提供四個設定資源集區的參數。其中包括:
CPU 使用量的最小和最大百分比。
記憶體使用量的最小和最大百分比。
根據您對資源集區組態所做的變更,可能會存在轉換期限,而且在轉換期間,會產生處理作用中或等候中要求的已知行為。如需詳細資訊,請參閱<資源管理員的狀態>。
工作負載群組的命令
您可以使用下表所述的命令來設定工作負載群組。
DDL 命令 |
描述 |
---|---|
建立工作負載群組並將它與資源集區產生關聯。 |
|
變更工作負載群組的組態。這個陳述式會將變更寫入儲存的組態中繼資料。執行此陳述式之後,您必須執行 ALTER RESOURCE GOVERNOR 陳述式,將中繼資料資訊寫入記憶體中組態。 |
|
卸除工作負載群組。 |
資源管理員會提供下列六個設定工作負載群組的參數:
要求的最大記憶體數量。
要用於要求的最大 CPU 百分比。
要求的資源逾時。
要求的相對重要性。
工作負載群組的最大要求數目。
工作負載群組將位於其中的資源集區。
根據您對工作負載群組組態所做的變更,在套用變更時,會產生處理作用中或等候中要求的已知行為。如需詳細資訊,請參閱<資源管理員的狀態>。
資源管理員的命令
您可以使用下表所述的命令來設定資源管理員。
DDL 命令 |
描述 |
---|---|
套用使用 ALTER 命令指定的組態變更、啟用或停用 RESOURCE GOVERNOR、註冊分類函數,或重設統計資料。 |
ALTER RESOURCE GOVERNOR 陳述式可用來執行下列動作:
發出 ALTER WORKLOAD GROUP 或 ALTER RESOURCE POOL 陳述式時,套用指定的組態變更。
啟用或停用資源管理員。這也會用於套用組態變更。
註冊要求分類的函數。
針對所有工作負載群組與資源集區重設統計資料。
根據您對資源管理員組態所做的變更,在套用變更時,會產生處理作用中或等候中要求的已知行為。如需詳細資訊,請參閱<資源管理員的狀態>。
資源管理員的檢視
下列目錄和動態管理檢視是資源管理員特有的項目。
目錄檢視
下表將描述資源管理員的目錄檢視。
名稱 |
描述 |
---|---|
傳回儲存的資源管理員狀態。 |
|
傳回儲存的資源集區組態。檢視的每個資料列都會決定集區的組態。 |
|
傳回儲存的工作負載群組組態。 |
動態管理檢視
下表將描述資源管理員的動態管理檢視。
名稱 |
描述 |
---|---|
傳回工作負載群組統計資料以及工作負載群組的目前記憶體中組態。 |
|
傳回目前資源集區狀態的相關資訊、資源集區的目前組態和資源集區統計資料。 |
|
傳回資料列,其中包含資源管理員的目前記憶體中組態狀態。 |
SQL Server 的檢視
許多 SQL Server 系統檢視已經更新而且會提供資源管理員的相關資訊。
動態管理檢視
下表將描述 SQL Server 動態管理檢視。
名稱 |
描述 |
---|---|
傳回已取得記憶體授權或是仍然需要記憶體授權來執行的查詢。不需要等候記憶體授權的查詢將不會出現在此檢視中。下列資料行是針對資源管理員加入的:
|
|
傳回目前查詢資源信號狀態的相關資訊。sys.dm_exec_query_resource_semaphores 會提供一般查詢執行的記憶體狀態,而且可讓您判斷系統是否可以存取足夠的記憶體。 下列資料行是針對資源管理員加入的:
|
|
針對 SQL Server 上每個已驗證的工作階段,各傳回一個資料列。 下列資料行是針對資源管理員加入的:
|
|
傳回在 SQL Server 內部執行之每個要求的相關資訊。 下列資料行是針對資源管理員加入的:
|
|
針對 SQL Server 快取的每個查詢計畫傳回一個資料列,加快查詢執行的速度。 下列資料行是針對資源管理員加入的:
|
|
SQL Server 內部的配置會使用 SQL Server 記憶體管理員。 下列資料行是針對資源管理員加入的:
|
|
傳回執行中之執行緒的等候相關資訊。您可以使用這份檢視來診斷 SQL Server 的效能問題,以及特定查詢和批次的效能問題。 |
SQL Server 事件類別參考
許多 SQL Server 事件類別已經更新,而且已經加入支援資源管理員的全新事件類別。
名稱 |
描述 |
---|---|
這個事件類別會指出資源管理員偵測到某個查詢已經超過針對 REQUEST_MAX_CPU_TIME_SEC 所指定的 CPU 臨界值。 |
|
這個事件類別會指出 LOGON 觸發程序或資源管理員分類函數開始執行。 |
|
這個事件類別會指出 LOGON 觸發程序或資源管理員分類函數執行完成。 |