Monitore o consumo de recursos do banco de dados
Todo mundo gosta de otimização de performance, por isso, inventei 9 regras para ajudar as pessoas a melhorarem os conhecimentos sobre o assunto. Gostaria de começar falando sobre a Regra 1, que fala sobre monitorar o consumo de recursos.
Logo que escrevi essa regra, pensei em duas coisas:
- As pessoas ficarão curiosas para saber por que coloquei a palavra DISK, quando os recursos deveriam incluir CPU, memória e rede.
- Ao ler a regra, a expectativa das pessoas será encontrar os contadores do Perfmon ou DMV’s para usar no dia a dia.
Por isso, gostaria de propor o seguinte desafio:
Você é capaz de dizer se o banco de dados está sofrendo lentidão usando somente os contadores do Performance Monitor?
Segue aqui as informações do Performance Monitor:
- Processor
- %Processor Time = 65%
- System
- Processor Queue Length = 5
- Context Switches/sec = 27000
- Logical Disk
- Average Disk Queue Length = 13
- Memory
- %Committed Bytes In Use = 48%
- Available MB = 220
- Page Faults/sec = 4000
- SQL Buffer Manager
- Page Life Expectancy = 140
- Buffer cache hit ratio = 92%
- Lazy Writer/sec = 0.5
- SQL General Statistics
- User Connections = 5200
- SQL Statistics
- Batch Requests/sec = 1000
- SQL Compilations/sec = 70
No próximo artigo vou comentar um pouco mais sobre a análise do Performance Monitor.
Comments
Anonymous
January 04, 2016
The comment has been removedAnonymous
January 05, 2016
Boa análise. Não posso comentar muito senão vira um spoiler dos demais artigos... posso dizer que voce foi bem certeiro em relação ao disco. Abraços FabricioAnonymous
January 05, 2016
Interessante essa hein! O Thiago falou tudo, uso bastante o Perfmon e Lazy Writer/sec é algo que praticamente não se vê. Neste caso, poderíamos pensar que o cache havia sido zerado recentemente mas média de 0,5 é bastante perto do que estou habituado a ver, geralmente 0,0X. Temos algum enfileiramento de disco mas não sabemos quantas Disk Transfers/sec estamos fazendo e se são de escrita ou leitura. Também não temos o Sec/Transfers pra saber a latência. Agora o Cache Hit Ratio estou acostumado a ver valores bem próximos de 99,9%, mesmo quando o PLE está baixo. Pior que não dá nem pra aumentar max server memory com 220MB free. Estou acompanhando, abs!Anonymous
January 05, 2016
Olá Luiz! Obrigado pelo seu palpite. Também estou acostumado a ver muitos 9 no Cache Hit Ratio. Abraços, FabricioAnonymous
January 06, 2016
The comment has been removedAnonymous
January 07, 2016
Oi Jorge! Concordo com você que o snapshot é muitas vezes (nesse caso também) incompleto para uma análise. Achei legal os complementos que voce adicionou. Obrigado! Fabricio