ALTER RESOURCE POOL (Transact-SQL)
Altera uma configuração do pool de recursos do Administrador de Recursos existente no SQL Server.
Aplica-se a: SQL Server (do SQL Server 2008 à versão atual). |
Convenções da sintaxe Transact-SQL.
Sintaxe
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 ]
[ [ , ] MIN_IOPS_PER_VOLUME = value ]
[ [ , ] MAX_IOPS_PER_VOLUME = 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]
Argumentos
{ pool_name | "default" }
É o nome de um pool de recursos definido pelo usuário existente ou do pool de recursos padrão criado quando o SQL Server é instalado."default" deve estar entre aspas duplas ("") ou colchetes ([]) quando usado com ALTER RESOURCE POOL para evitar conflito com DEFAULT, que é uma palavra reservada de sistema. Para obter mais informações, consulte Identificadores de banco de dados.
Dica
Grupos de cargas de trabalho e pools de recursos predefinidos usam nomes em letras minúsculas, como "default".Isso deve ser levado em consideração nos servidores que usam agrupamento com diferenciação de maiúsculas e minúsculas.Os servidores com agrupamento sem diferenciação de maiúsculas e minúsculas, como SQL_Latin1_General_CP1_CI_AS, tratarão "default" e "Default" da mesma maneira.
MIN_CPU_PERCENT =value
Especifica a média de largura de banda de CPU garantida para todas as solicitações no pool de recursos quando houver contenção de CPU. value é um inteiro com uma configuração padrão de 0. O intervalo permitido para value é de 0 a 100.MAX_CPU_PERCENT =value
Especifica a média máxima de largura de banda de CPU que todas as solicitações do pool de recursos receberão quando houver contenção de CPU. value é um inteiro com uma configuração padrão de 100. O intervalo permitido para value é de 1 a 100.CAP_CPU_PERCENT =value
Aplica-se a: do SQL Server 2012 ao SQL Server 2014.
Especifica a capacidade máxima de destino de CPU para solicitações no pool de recursos. value é um inteiro com uma configuração padrão de 100. O intervalo permitido para value é de 1 a 100.
Dica
Devido à natureza estatística da governança de CPU, você poderá observar picos ocasionais excedendo o valor especificado em CAP_CPU_PERCENT.
AFFINITY {SCHEDULER = AUTO | (Scheduler_range_spec) | NUMANODE = (NUMA_node_range_spec)}
Aplica-se a: do SQL Server 2012 ao SQL Server 2014.
Anexe o pool de recursos a agendadores específicos. O valor padrão é AUTO.
AFFINITY SCHEDULER = (Scheduler_range_spec) mapeia o pool de recursos para as agendas do SQL Server identificadas pelos IDs especificados. Essas IDs são mapeadas para os valores na coluna de scheduler_id em sys.dm_os_schedulers (Transact-SQL).
Quando você usar AFFINITY NAMANODE = (NUMA_node_range_spec), o pool de recursos terá uma afinidade com os agendadores do SQL Server mapeados para CPUs físicas que correspondem ao nó NUMA especificado ou ao intervalo de nós. Você pode usar a seguinte consulta Transact-SQL para descobrir o mapeamento entre a configuração NUMA física e as IDs de agendador do 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
Especifica a quantidade mínima de memória reservada para esse pool de recursos que não pode ser compartilhada com outros pools de recursos. value é um inteiro com uma configuração padrão de 0. O intervalo permitido para value é de 0 a 100.MAX_MEMORY_PERCENT =value
Especifica a memória total de servidor que pode ser usada por solicitações nesse pool de recursos. value é um inteiro com uma configuração padrão de 100. O intervalo permitido para value é de 1 a 100.MIN_IOPS_PER_VOLUME =value
Aplica-se a: do SQL Server 2014 ao SQL Server 2014.
Especifica o mínimo de operações de E/S por segundo (IOPS) por volume de disco para reservar para o pool de recursos. O intervalo permitido para value é de 0 a 2^31-1 (2.147.483.647). Especifique 0 para indicar nenhum limite mínimo para o pool.
MAX_IOPS_PER_VOLUME =value
Aplica-se a: do SQL Server 2014 ao SQL Server 2014.
Especifica o máximo de operações de E/S por segundo (IOPS) por volume de disco para permitir para o pool de recursos. O intervalo permitido para value é de 0 a 2^31-1 (2.147.483.647). Especifique 0 para definir um limite ilimitado para o pool. O padrão é 0.
Se o MAX_IOPS_PER_VOLUME para um pool for definido como 0, o pool não será controlado e pode utilizar todos os IOPS no sistema mesmo se outros pools tiverem MIN_IOPS_PER_VOLUME definido. Para esses casos, é recomendável definir o valor de MAX_IOPS_PER_VOLUME para esse pool para um número alto (por exemplo, o valor máximo 2^31-1) se você quiser que esse pool seja controlado para E/S.
Comentários
MAX_CPU_PERCENT e MAX_MEMORY_PERCENT devem ser maior que ou igual a MIN_CPU_PERCENT e MIN_MEMORY_PERCENT, respectivamente.
MAX_CPU_PERCENT pode usar a capacidade de CPU acima do valor de MAX_CPU_PERCENT se estiver disponível. Embora possa haver mais picos periódicos acima de CAP_CPU_PERCENT, as cargas de trabalho não deverão exceder CAP_CPU_PERCENT por longos períodos de tempo, mesmo quando a capacidade adicional da CPU estiver disponível.
A porcentagem total de CPU para cada componente de afinidade (agendador(es) ou nó(s) NUMA) não deve exceder 100%.
Ao executar instruções DDL, é recomendável estar familiarizado com os estados do Administrador de Recursos. Para obter mais informações, consulte Administrador de Recursos.
Permissões
Requer a permissão CONTROL SERVER.
Exemplos
O exemplo a seguir mantém todas as configurações padrão de pool de recursos no pool default, exceto para MAX_CPU_PERCENT, que é alterado para 25.
ALTER RESOURCE POOL "default"
WITH
( MAX_CPU_PERCENT = 25);
GO
ALTER RESOURCE GOVERNOR RECONFIGURE;
GO
No exemplo a seguir, o CAP_CPU_PERCENT define a extremidade rígida como 80% e AFFINITY SCHEDULER é definido como um valor individual 8 e um intervalo de 12 a 16.
Aplica-se a: do SQL Server 2012 ao SQL Server 2014. |
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
Consulte também
Referência
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)