資源管理員的狀態
在 SQL Server 上,資源管理員具有兩種狀態:啟用或停用。當您進行組態變更時,這些狀態就會影響基本作業以及工作負載處理。此主題涵蓋了資源管理員的狀態以及下列情況中發生的事件:
安裝資源管理員時,系統的初始組態和狀態。
您啟用或停用了資源管理員。
您變更了資源管理員的組態。
初始組態
安裝資源管理員時,系統就會建立下列工作負載群組和對應的資源集區::
內部群組和內部集區。
預設群組和預設集區。
此時,資源管理員處於停用狀態。
啟用或停用資源管理員
當您啟用或停用資源管理員時,下列行為屬於正常的狀況。
啟用資源管理員
若要啟用資源管理員,請執行 ALTER RESOURCE GOVERNOR RECONFIGURE。啟用資源管理員會產生下列結果:
系統會針對新的連接執行分類函數,以便將其工作負載指派給工作負載群組。
系統會接受並強制執行資源管理員組態中指定的資源限制。
啟用資源管理員之前存在的要求會受到停用資源管理員時所做的任何組態變更影響。
停用資源管理員
若要停用資源管理員,請執行 ALTER RESOURCE GOVERNOR DISABLE。停用資源管理員會產生下列結果:
系統不會執行分類函數。
所有新的連接都會自動分類至預設群組中。
系統起始的要求會分類至內部工作負載群組中。
所有現有的工作負載群組和資源集區設定都會重設為預設值。在此情況下,如果到達限制,系統將不會引發任何事件。
一般的系統監視不會受到影響。
停用資源管理員時,雖然您可以變更資源管理員的組態,但是這些變更要等到資源管理員啟用時才會生效。
一旦重新啟動 SQL Server 之後,資源管理員將不會載入其組態,而只會具有預設和內部群組與集區。
變更資源管理員的組態
資源管理員的組態變更不會立即生效。組態變更會分成兩個步驟進行:
發出適當的 ALTER 陳述式,以便變更資源集區或工作負載群組設定。這會更新組態中繼資料。
發出 ALTER RESOURCE GOVERNOR 陳述式。這會將更新的中繼資料複製到記憶體中組態。下表描述一般組態變更生效並顯示於資源管理員工作階段中的時機。
元件 |
描述 |
---|---|
使用者定義的分類 |
這項變更適用於新的工作階段連接。 |
資源集區 |
長時間執行的工作階段可能會受到這項變更的影響,而短時間執行的工作階段可能會在變更生效之前就完成了。 |
工作負載群組 |
目前的工作階段不會受到這項變更的影響,但是新的連接會受到影響。 |
除了發出資源管理員 DDL 陳述式時產生的一般工作階段行為以外,資源集區或工作負載群組中的個別設定也具有可預測的結果,而且當您變更這些設定時,會對處理產生特定影響。
資源集區設定
系統提供了四個設定資源集區的設定。這些設定包括:
CPU 使用量的最小和最大百分比。
記憶體使用量的最小和最大百分比。
當您將變更套用至資源集區組態時,會產生處理作用中或等候中要求的轉換期限。下表描述當您將變更套用至資源集區設定時,系統產生的工作階段需求和工作階段行為。
設定 |
動作 |
描述 |
---|---|---|
最小百分比 |
增加或減少 |
|
最大百分比 |
增加或減少 |
|
工作負載群組設定
系統提供了七個設定工作負載群組的設定。這些設定包括:
要求的最大記憶體配置。
要求的最大 CPU 時間。
要求的資源逾時。
要求的相對重要性設定。
要求數目的工作群組限制。
平行處理原則的最大程度。
指定的資源集區。
設定 |
動作 |
描述 |
---|---|---|
最大記憶體 |
增加或減少 |
|
最大 CPU 時間 |
增加或減少 |
|
資源逾時 |
增加或減少 |
已經在佇列中等候的查詢不會受到影響。新的查詢會使用新的設定。 |
重要性 |
增加或減少 |
只會影響工作負載群組中查詢的 CPU 分配。 |
最大要求數目 |
增加或減少 |
|
平行處理原則的最大程度 |
增加或減少 |
只會影響新查詢的編譯和執行作業。 |
指定的資源集區 |
變更 |
作用中要求會繼續使用現有的資源集區及其設定。新的要求會使用新的集區及其設定。 |
資源管理員設定
除了變更資源管理員組態或變更資源管理員的目前狀態以外,您也可以使用 ALTER RESOURCE GOVERNOR RECONFIGURE 陳述式來建立或變更分類函數。
當您註冊新的分類函數時,就會變更將新連接路由傳送至不同工作負載群組所用的規則。這項變更不會影響已經分類的查詢,只會影響新的查詢。