ALTER RESOURCE POOL (Transact-SQL)

Modifie une configuration de pool de ressources du gouverneur de ressources existante.

Icône Lien de rubrique Conventions de la syntaxe Transact-SQL. Introduction requise.

Syntaxe

ALTER RESOURCE POOL { pool_name | "default" }
[WITH
     ( [ MIN_CPU_PERCENT = value ]
     [ [ , ] MAX_CPU_PERCENT = value ] 
     [ [ , ] CAP_CPU_PERCENT = value ] 
     [ [ , ] AFFINITY {SCHEDULER = AUTO | (Scheduler_range_spec) | NUMANODE = (NUMA_node_range_spec)}] 
     [ [ , ] MIN_MEMORY_PERCENT = value ]
     [ [ , ] MAX_MEMORY_PERCENT = value ] )
] 
[;]

Scheduler_range_spec::=
{SCHED_ID | SCHED_ID TO SCHED_ID}[,…n]
NUMA_node_range_spec::=
{NUMA_node_ID | NUMA_node_ID TO NUMA_node_ID}[,…n]

Arguments

  • { pool_name | "default" }
    Nom d'un pool de ressources défini par l'utilisateur existant ou du pool de ressources par défaut créé lors de l'installation de SQL Server 2012.

    Le paramètre default doit être placé entre des guillemets doubles ("") ou des crochets ([]) lorsqu'il est utilisé avec l'instruction ALTER RESOURCE POOL pour éviter tout conflit avec DEFAULT, qui est un mot réservé au système. Pour plus d'informations, consultez Identificateur de la base de données..

    [!REMARQUE]

    Les groupes de charges de travail et les pools de ressources prédéfinis utilisent tous des noms minuscules, tels que « default ». Ce facteur doit être pris en considération pour les serveurs qui utilisent un classement qui respecte la casse. Les serveurs avec un classement qui ne respecte pas la casse, tel que SQL_Latin1_General_CP1_CI_AS, traitent "default" et "Default" comme identiques.

  • MIN_CPU_PERCENT =value
    Spécifie la bande passante de l'UC moyenne garantie pour toutes les demandes dans le pool de ressources en cas de contention de l'UC. value est un entier dont le paramètre par défaut est 0. La plage autorisée pour value est comprise entre 0 et 100.

  • MAX_CPU_PERCENT =value
    Spécifie la bande passante de l'UC moyenne maximale que toutes les demandes du pool de ressources recevront en cas de contention de l'UC. value est un entier dont le paramètre par défaut est 100. La plage autorisée pour value est comprise entre 1 et 100.

  • CAP_CPU_PERCENT =value
    Spécifie une extrémité de fin fixe sur la bande passante de l'UC que toutes les demandes dans le pool de ressources recevront. Limite le niveau de la bande passante maximum de l'UC pour qu'il soit identique à la valeur spécifiée. value est un entier dont le paramètre par défaut est 100. La plage autorisée pour value est comprise entre 1 et 100.

  • AFFINITY {SCHEDULER = AUTO | (Scheduler_range_spec) | NUMANODE = (NUMA_node_range_spec)}
    Attache la liste des ressources aux planificateurs spécifiques. La valeur par défaut est AUTO.

    AFFINITY SCHEDULER = (Scheduler_range_spec) mappe le pool de ressources aux planifications SQL Server identifiées par les ID donnés. Ces ID mappent aux valeurs de la colonne scheduler_id dans sys.dm_os_schedulers (Transact-SQL).

    Lorsque vous utilisez AFFINITY NAMANODE = (NUMA_node_range_spec), le pool de ressources possède une affinité avec les planificateurs SQL Server qui mappent aux UC physiques correspondant au nœud NUMA ou à la plage de nœuds donnée. Vous pouvez utiliser la requête Transact-SQL ci-après pour découvrir le mappage entre la configuration NUMA physique et les ID du planificateur SQL Server.

    SELECT osn.memory_node_id AS [numa_node_id], sc.cpu_id, sc.scheduler_id
    FROM sys.dm_os_nodes AS osn
    INNER JOIN sys.dm_os_schedulers AS sc ON osn.node_id = sc.parent_node_id AND sc.scheduler_id < 1048576
    
  • MIN_MEMORY_PERCENT =value
    Spécifie la quantité de mémoire minimale réservée à ce pool de ressources qui ne peut pas être partagée avec d'autres pools de ressources. value est un entier dont le paramètre par défaut est 0. La plage autorisée pour value est comprise entre 0 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. value est un entier dont le paramètre par défaut est 100. La plage autorisée pour value est comprise entre 1 et 100.

Notes

MAX_CPU_PERCENT et MAX_MEMORY_PERCENT doivent respectivement être supérieurs ou égaux à MIN_CPU_PERCENT et MIN_MEMORY_PERCENT.

CAP_CPU_PERCENT diffère de MAX_CPU_PERCENT car les charges de travail associées au pool peuvent utiliser la capacité de l'UC au-dessus de la valeur MAX_CPU_PERCENT si elle est disponible, mais pas au-dessus de la valeur CAP_CPU_PERCENT.

Le pourcentage de l'UC total pour chaque composant d'affinité (planificateur(s) ou nœud(s) NUMA) ne doit pas dépasser 100 %.

Lorsque vous exécutez des instructions DDL, nous vous recommandons de connaître les états du gouverneur de ressources. Pour plus d'informations, consultez Gouverneur de ressources.

Autorisations

Nécessite l'autorisation CONTROL SERVER.

Exemples

L'exemple suivant conserve tous les paramètres du pool de ressources par défaut sur le pool default à l'exception de MAX_CPU_PERCENT qui est remplacé par 25.

ALTER RESOURCE POOL "default"
WITH
     ( MAX_CPU_PERCENT = 25)
GO
ALTER RESOURCE GOVERNOR RECONFIGURE
GO

Dans l'exemple suivant, CAP_CPU_PERCENT définit l'extrémité de fin fixe à 80 % et AFFINITY SCHEDULER a une valeur individuelle de 8 et une plage de 12 à 16.

ALTER RESOURCE POOL Pool25
WITH( 
     MIN_CPU_PERCENT = 5,
     MAX_CPU_PERCENT = 10,     
     CAP_CPU_PERCENT = 80,
     AFFINITY SCHEDULER = (8, 12 TO 16), 
     MIN_MEMORY_PERCENT = 5,
     MAX_MEMORY_PERCENT = 15
);

GO
ALTER RESOURCE GOVERNOR RECONFIGURE
GO

Voir aussi

Référence

CREATE RESOURCE POOL (Transact-SQL)

DROP RESOURCE POOL (Transact-SQL)

CREATE WORKLOAD GROUP (Transact-SQL)

ALTER WORKLOAD GROUP (Transact-SQL)

DROP WORKLOAD GROUP (Transact-SQL)

ALTER RESOURCE GOVERNOR (Transact-SQL)

Concepts

Gouverneur de ressources