SQL Server - Como determinar a memória ideal, por exemplo?

8

Temos algumas máquinas virtuais com memória X alocada para eles. Essa quantidade de memória é um tanto aleatória. Ele foi alocado para a máquina porque essa era a quantidade de memória que a máquina física possuía, por recomendação de um fornecedor ou porque adivinhávamos o melhor palpite sobre quanta memória pensávamos que a instância exigiria.

Entendo que quanto mais memória, melhor, mas também gostaria de evitar o excesso de alocação de memória para a VM quando não for necessário. A memória poderia ser melhor utilizada por outra máquina.

Qual seria a melhor maneira de determinar a quantidade ideal de memória por instância que está realmente ativa e sendo usada? Existem outros contadores que devemos observar além da expectativa de vida da página? Temos exemplos de PLEs de 10k + e outros de 100k +.

Qualquer ideia é bem apreciada. Obrigado Sam

Sam Bryant
fonte

Respostas:

6

Um bom ponto de partida é melhor descrito por Glenn em seu artigo: Configurações máximas de memória sugeridas para o SQL Server 2005/2008

O melhor é basear o uso do servidor de banco de dados durante todo o ciclo de negócios, pois isso fornecerá o melhor número com base na sua carga de trabalho, usando os contadores PERFMON abaixo:

  • SQL Server: Gerenciador de buffer \ Expectativa de vida útil da página
  • SQL Server: Buffer Manager \ Leituras de página / s
  • Disco Físico \ Leituras de Disco / s
  • Memória \ Mbytes Disponíveis
  • SQL Server: Gerenciador de memória - memória total do servidor
  • SQL Server: Gerenciador de memória - memória do servidor de destino

Nota: Se você usar qualquer fórmula ou calculadora online para calcular a configuração da memória do SQL Server, é melhor ler o Beaware of Wow ... Uma calculadora online para configurar mal a memória do SQL Server! - por Jonathan Kehayias primeiro.

Para Expectativa de vida da página, consulte Expectativa de vida da página não é o que você pensa ... por Paul Randall.

Uma excelente referência:

Quanta memória o meu SQL Server realmente precisa? - por Jonathan Kehayias

Kin Shah
fonte