ALTER EXTERNAL RESOURCE POOL (Transact-SQL)

適用於: SQL Server 2016 (13.x) 和更新版本Azure SQL 受控執行個體

變更 Resource Governor 外部集區,其指定外部處理序可以使用的資源。

針對 SQL Server 2016 (13.x) 中的 R 服務 (資料庫內),外部集區會控管 rterm.exeBxlServer.exe 及其繁衍的其他處理序。

若是機器學習服務,外部集區會控管 rterm.exepython.exeBxlServer.exe 及其繁衍的其他處理序。

Transact-SQL 語法慣例

Syntax

ALTER EXTERNAL RESOURCE POOL { pool_name | "default" }
[ WITH (
    [ MAX_CPU_PERCENT = value ]
    [ [ , ] MAX_MEMORY_PERCENT = value ]
    [ [ , ] MAX_PROCESSES = value ]
    )
]
[ ; ]

<CPU_range_spec> ::=
{ CPU_ID | CPU_ID  TO CPU_ID } [ ,...n ]

ALTER EXTERNAL RESOURCE POOL { pool_name | "default" }
[ WITH (
   [ MAX_CPU_PERCENT = value ]
   [ [ , ] AFFINITY CPU =
           {
               AUTO
             | ( <cpu_range_spec> )
             | NUMANODE = (( <NUMA_node_id> )
           } ]   
   [ [ , ] MAX_MEMORY_PERCENT = value ]
   [ [ , ] MAX_PROCESSES = value ]
   )
]
[ ; ]

<CPU_range_spec> ::=
{ CPU_ID | CPU_ID  TO CPU_ID } [ ,...n ]

注意

若要檢視 SQL Server 2014 (12.x) 和舊版的 Transact-SQL 語法,請參閱 舊版檔

引數

{ pool_name | "default" }
這是現有使用者定義的外部資源集區名稱,或是安裝 SQL Server 時建立的預設外部資源集區名稱。 搭配 ALTER EXTERNAL RESOURCE POOL 使用時,"default" 必須加上引號 ("") 或方括號 ([]) 才能避免與系統保留字 DEFAULT 產生衝突。

MAX_CPU_PERCENT =value
在出現 CPU 競爭時,指定外部資源集區中所有要求可接收的最大平均 CPU 頻寬。 是整數。 允許的 value 範圍為 1 至 100。

MAX_MEMORY_PERCENT =value
指定在此外部資源集區中,可供要求使用的伺服器記憶體總量。 是整數。 允許的 value 範圍為 1 至 100。

MAX_PROCESSES =value
指定允許外部資源集區使用的處理序數目上限。 指定 0 來為集區設定無限的閾值,這在之後只有電腦資源繫結會對其建立繫結。

MAX_CPU_PERCENT =value
在出現 CPU 競爭時,指定外部資源集區中所有要求可接收的最大平均 CPU 頻寬。 是整數。 允許的 value 範圍為 1 至 100。

AFFINITY {CPU = AUTO | ( <CPU_range_spec> ) | NUMANODE = (<NUMA_node_range_spec>)}
將外部資源集區附加到指定的 CPU。

AFFINITY CPU = (<CPU_range_spec>) 會將外部資源集區對應到指定 CPU_ID 所識別的 SQL Server CPU。 當您使用 AFFINITY NUMANODE = (<NUMA_node_range_spec>) 時,外部資源集區會與對應到指定 NUMA 節點或節點範圍的 SQL Server 實體 CPU 同質化。

MAX_MEMORY_PERCENT =value
指定在此外部資源集區中,可供要求使用的伺服器記憶體總量。 是整數。 允許的 value 範圍為 1 至 100。

MAX_PROCESSES =value
指定允許外部資源集區使用的處理序數目上限。 指定 0 來為集區設定無限的閾值,這在之後只有電腦資源繫結會對其建立繫結。

備註

當您執行 ALTER RESOURCE GOVERNOR RECONFIGURE 陳述式時,資料庫引擎會實作資源集區。

如需資源集區的一般資訊,請參閱 Resource Governor 資源集區sys.resource_governor_external_resource_pools (Transact-SQL)sys.dm_resource_governor_external_resource_pool_affinity (Transact-SQL)

如需使用外部資源集區來管理機器學習工作的特定資訊,請參閱 SQL Server 中的機器學習資源管理...

權限

需要 CONTROL SERVER 權限。

範例

下列陳述式會變更外部集區,其限制 CPU 使用量為 50%,電腦中可用記憶體的最大記憶體為 25%。

ALTER EXTERNAL RESOURCE POOL ep_1
WITH (
    MAX_CPU_PERCENT = 50
    , MAX_MEMORY_PERCENT = 25
);
GO
ALTER RESOURCE GOVERNOR RECONFIGURE;
GO
ALTER EXTERNAL RESOURCE POOL ep_1
WITH (
    MAX_CPU_PERCENT = 50
    , AFFINITY CPU = AUTO
    , MAX_MEMORY_PERCENT = 25
);
GO
ALTER RESOURCE GOVERNOR RECONFIGURE;
GO

另請參閱