ALTER EXTERNAL RESOURCE POOL (Transact-SQL)

S’applique à : SQL Server 2016 (13.x) et versions ultérieures Azure SQL Managed Instance

Change un pool externe Resource Governor qui spécifie quelles ressources peuvent être utilisées par les processus externes.

Pour R Services (dans la base de données) dans SQL Server 2016 (13.x), le pool externe régit rterm.exe, BxlServer.exe et d’autres processus générés par ces derniers.

Pour Machine Learning Services, le pool externe gouverne rterm.exe, python.exe, BxlServer.exe et les autres processus générés par ces derniers.

Conventions de la syntaxe Transact-SQL

Syntaxe

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 ]

Remarque

Pour afficher la syntaxe Transact-SQL pour SQL Server 2014 (12.x) et versions antérieures, consultez la Documentation sur les versions antérieures.

Arguments

{ pool_name | "default" }
Nom d’un pool de ressources externe existant défini par l'utilisateur ou du pool de ressources externe par défaut créé au moment de l’installation de SQL Server. Quand il est utilisé avec l’instruction ALTER EXTERNAL RESOURCE POOL, le paramètre default doit être placé entre des guillemets doubles ("") ou des crochets ([]) pour éviter tout conflit avec DEFAULT, qui est un mot réservé au système.

MAX_CPU_PERCENT =value
Spécifie la bande passante processeur moyenne maximale que toutes les demandes du pool de ressources externes peuvent recevoir en cas de contention du processeur. value est un entier. La plage autorisée pour value est comprise entre 1 et 100.

MAX_MEMORY_PERCENT =value
Spécifie la mémoire totale du serveur qui peut être utilisée par les demandes dans ce pool de ressources externes. value est un entier. La plage autorisée pour value est comprise entre 1 et 100.

MAX_PROCESSES =value
Spécifie le nombre maximal de processus autorisés pour le pool de ressources externes. Spécifiez 0 pour définir un seuil illimité pour le pool, qui est alors limité uniquement par les ressources de l’ordinateur.

MAX_CPU_PERCENT =value
Spécifie la bande passante processeur moyenne maximale que toutes les demandes du pool de ressources externes peuvent recevoir en cas de contention du processeur. value est un entier. La plage autorisée pour value est comprise entre 1 et 100.

AFFINITY {CPU = AUTO | ( <CPU_range_spec> ) | NUMANODE = (<NUMA_node_range_spec>)}
Joint le pool de ressources externe aux UC spécifiées.

AFFINITY CPU = (<CPU_range_spec>) mappe le pool de ressources externes aux processeurs SQL Server identifiés par les valeurs CPU_ID spécifiées. Quand vous utilisez AFFINITY NUMANODE = (<NUMA_node_range_spec>), le pool de ressources externes est associé par affinité aux processeurs physiques SQL Server correspondant au nœud NUMA ou à la plage de nœuds en question.

MAX_MEMORY_PERCENT =value
Spécifie la mémoire totale du serveur qui peut être utilisée par les demandes dans ce pool de ressources externes. value est un entier. La plage autorisée pour value est comprise entre 1 et 100.

MAX_PROCESSES =value
Spécifie le nombre maximal de processus autorisés pour le pool de ressources externes. Spécifiez 0 pour définir un seuil illimité pour le pool, qui est alors limité uniquement par les ressources de l’ordinateur.

Notes

Le Moteur de base de données implémente le pool de ressources quand vous exécutez l’instruction ALTER RESOURCE GOVERNOR RECONFIGURE.

Pour obtenir des informations générales sur les pools de ressources, consultez Pool de ressources de Resource Governor, sys.resource_governor_external_resource_pools (Transact-SQL) et sys.dm_resource_governor_external_resource_pool_affinity (Transact-SQL).

Pour plus d’informations sur l’utilisation de pools de ressources externes pour gouverner les travaux de Machine Learning, consultez Gouvernance des ressources de Machine Learning dans SQL Server.

Autorisations

Nécessite l'autorisation CONTROL SERVER.

Exemples

L’instruction suivante change un pool externe, en limitant l’utilisation de l’UC à 50 % et la mémoire maximale à 25 % de la mémoire disponible sur l’ordinateur.

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

Voir aussi