ALTER EXTERNAL RESOURCE POOL (Transact-SQL)

Si applica a: SQL Server 2016 (13.x) e versioni successive Istanza gestita di SQL di Azure

Modifica un pool di risorse esterne di Resource Governor in cui sono specificate le risorse che possono essere usate da processi esterni.

Per R Services (In-Database) in SQL Server 2016 (13.x), il pool esterno gestisce rterm.exe, BxlServer.exe e altri processi derivati.

Per Machine Learning Services, il pool esterno gestisce rterm.exe, python.exe, BxlServer.exe e altri processi derivati.

Convenzioni di sintassi Transact-SQL

Sintassi

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 ]

Nota

Per visualizzare la sintassi Transact-SQL per SQL Server 2014 (12.x) e versioni precedenti, vedere la documentazione delle versioni precedenti.

Argomenti

{ pool_name | "default" }
Nome di un pool di risorse esterne esistente definito dall'utente o del pool di risorse esterne predefinito creato durante l'installazione di SQL Server. Se usato con ALTER EXTERNAL RESOURCE POOL, "default" deve essere racchiuso tra virgolette ("") o parentesi quadre ([]) per evitare conflitti con DEFAULT, che è una parola riservata al sistema.

MAX_CPU_PERCENT =value
Specifica la larghezza di banda media massima della CPU ricevibile da tutte le richieste nel pool di risorse esterne in caso di contesa di CPU. value è un valore intero. L'intervallo consentito per value è compreso tra 1 e 100.

MAX_MEMORY_PERCENT =value
Specifica la memoria totale del server usabile dalle richieste in questo pool di risorse esterne. value è un valore intero. L'intervallo consentito per value è compreso tra 1 e 100.

MAX_PROCESSES =value
Specifica il numero massimo di processi consentiti per il pool di risorse esterne. Specificare 0 per impostare una soglia illimitata per il pool, che di conseguenza sarà limitato solo dalle risorse di computer.

MAX_CPU_PERCENT =value
Specifica la larghezza di banda media massima della CPU ricevibile da tutte le richieste nel pool di risorse esterne in caso di contesa di CPU. value è un valore intero. L'intervallo consentito per value è compreso tra 1 e 100.

AFFINITY {CPU = AUTO | ( <CPU_range_spec> ) | NUMANODE = (<NUMA_node_range_spec>)}
Associa il pool di risorse esterne a una CPU specifica.

AFFINITY CPU = (<CPU_range_spec>) esegue il mapping del pool di risorse esterne alle CPU di SQL Server identificate dai valori CPU_ID specificati. Quando si usa AFFINITY NUMANODE = (<NUMA_node_range_spec>), viene creata affinità tra il pool di risorse esterne e le CPU fisiche di SQL Server corrispondenti al nodo o all'intervallo di nodi NUMA specificato.

MAX_MEMORY_PERCENT =value
Specifica la memoria totale del server usabile dalle richieste in questo pool di risorse esterne. value è un valore intero. L'intervallo consentito per value è compreso tra 1 e 100.

MAX_PROCESSES =value
Specifica il numero massimo di processi consentiti per il pool di risorse esterne. Specificare 0 per impostare una soglia illimitata per il pool, che di conseguenza sarà limitato solo dalle risorse di computer.

Osservazioni:

Il motore di database implementa il pool di risorse quando si esegue l'istruzione ALTER RESOURCE GOVERNOR RECONFIGURE.

Per informazioni generali sui pool di risorse, vedere Pool di risorse di Resource Governor, sys.resource_governor_external_resource_pools (Transact-SQL) e sys.dm_resource_governor_external_resource_pool_affinity (Transact-SQL).

Per informazioni specifiche per la gestione di pool di risorse esterne usati per il machine learning, vedere Governance delle risorse per Machine Learning in SQL Server...

Autorizzazioni

È richiesta l'autorizzazione CONTROL SERVER.

Esempi

L'istruzione seguente modifica un pool esterno, limitando l'uso della CPU al 50% e la memoria massima al 25% della memoria disponibile nel computer.

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

Vedi anche