Compartilhar via


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).

Ícone de vínculo de tópico 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)

Conceitos

Administrador de Recursos