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.

image

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 removed

  • Anonymous
    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 Fabricio

  • Anonymous
    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, Fabricio

  • Anonymous
    January 06, 2016
    The comment has been removed

  • Anonymous
    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