Pergunta

Eu tenho várias tabelas grandes que eu preciso copiar em cópias particionadas em um banco de dados transacional.

Estou preocupado com o golpe que isso causará ao desempenho dos meus aplicativos de produção.

Na tentativa de mitigar isso, estou olhando para o governador de recursos.Eu vou definir meu script para usar um pool de recursos limitado a um máximo de 5% de CPU e memória.

A única parte sobre isso que não tenho certeza é o efeito no PLE.

Como eu entendo, a seleção da tabela lerá o valor no cache.Isso forçará outra coisa que estava no cache.(O conceito básico de ple.) Mas os itens "forçados" serão limitados aos 5% específicos?

significado depois de ter usado 5% da memória, só forçará itens em cache no mesmo 5%? (deixando os outros 95% não afetados.)

Outra maneira de pedir isso é: é o limite de memória de 5% o mesmo que dizer um limite de cache de 5%?

Foi útil?

Solução

Esta página MSDN afirma que as configurações de memória só afetam a memória de consulta:

pool de recursos do governador de recursos

.

min_memory_percent e max_memory_percent

Essas configurações são a quantidade mínima e máxima de memória reservada para o pool de recursos que não podem ser compartilhadas com outros conjuntos de recursos. A memória mencionada aqui é a execução de consulta Memória de concessão, não a memória do pool de buffer (por exemplo, dados e páginas de índice). Definir um valor mínimo de memória para um pool significa que você está garantindo que a porcentagem de memória especificada esteja disponível para quaisquer solicitações que possam ser executadas neste conjunto de recursos. Este é um diferencial importante em comparação com min_cpu_percent, porque, nessa memória, a memória pode permanecer no conjunto de recursos dado mesmo quando o pool não tem nenhuma solicitação nos grupos de carga de trabalho pertencentes a este pool. Portanto, é crucial que você tenha muito cuidado ao usar essa configuração, porque essa memória estará indisponível para uso por qualquer outro pool, mesmo quando não há solicitações ativas. Definir um valor máximo de memória para um pool significa que quando as solicitações estão em execução neste pool, elas nunca obterão mais do que essa porcentagem de memória.

O acima indica que o buffer pool é excluído das limitações do pool de recursos. Portanto, se você pretende realizar algumas ações que podem fazer com que todo o pool de buffer seja esvaziado para executar seu processo, você pode garantir que o processo seja executado durante as horas.

O seguinte é um trecho do blog do MSDN, página de vida da página do SQL Server :

.

A expectativa de vida da página (PLE) é a melhor indicação de quão volátil é o seu buffer buffer (BP). É um contador de perfmes, encontrado no objeto SQL Server: Buffer Manager Perfmon. Há também o nó do buffer: Contador de expectativa de vida da página que deve ser considerado para sistemas NUMA, usando a mesma lógica por nó como uma seria em um sistema não-numa.

A volatilidade

é medida tomando a média "vida" de uma página dentro do pool de buffer (em segundos). Se uma página for sobrescrita ou envelhecida, ele inicia uma vida totalmente nova.

Então, se muitas páginas estão sendo sobrescritas com novos dados com muita frequência, o PLE médio será baixo, e nossa volatilidade da BP será alta.

Por outro lado, se a maioria das páginas em nosso BP permaneça lá por um longo tempo sem ser sobrescrita, o PLE médio será alto, e a volatilidade da BP será baixa.

Então, por que nos preocupamos com a volatilidade da BP e ple? O que pode saber que a volatilidade BP faz para nós? O que é uma figura "boa" e "ruim"?

ple pode ser uma medida de quanto físico io seu servidor SQL está fazendo. Espero que eu tenha sua atenção, porque o IO físico é uma grande preocupação de desempenho, tanto para ler quanto escrita.

de perguntas nos comentários aqui:

.

O que é "memória de consulta" e como é diferente do cache?

Memória de consulta é usada para execução de consultas. É temporariamente usado para coisas como classes, bitmap cria, tabelas de hash, etc. Cache contém dados de tabela de memória.

.

Parece que a resposta à minha pergunta é que o PLE não será protegido pelo governador de recursos. Isso soa certo?

correto. A expectativa de vida da página é toda sobre como as páginas de dados permanecem na memória.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a dba.stackexchange
scroll top