O Oracle Statspack é uma ferramenta gratuita de diagnóstico de performance que existe no Oracle Database desde a versão 8, muito útil e poderosa, composta de um conjunto de scripts SQL, PL/SQL e SQL*Plus que coletam, armazenam e exibem estatísticas de desempenho de um Banco de Dados Oracle.
Essas estatísticas podem ser usadas para gerar relatórios detalhados sobre o desempenho do banco de dados, incluindo instruções SQL com alto consumo de recursos, "wait events" e muitas outras estatísticas que são úteis e necessárias para diagnosticar problemas de desempenho. O Statspack pode ser usado de forma proativa e reativa. A forma proativa envolve a coleta contínua de dados de desempenho para estabelecer um "baseline", que por sua vez, deve ser usado para efetuar comparações futuras quando surgirem problemas de desempenho. A forma reativa envolve a coleta de dados após a ocorrência de um problema visando identificar a causa raiz.
O Statspack não vem instalado e configurado no Banco de Dados. Para instalá-lo devemos executar um script, para configurá-lo outros, e para gerar os relatórios de desempenho (conhecidos como Statspack Reports) mais outro. O trabalho principal é a interpretação dos relatórios de performance, que eu costumo fazer analogia com o trabalho de um médico, onde você chega no Pronto-socorro tossindo e com febre sem saber exatamente o que tem. O médico te analisa, pede alguns exames, analisa o resultado deles, te dá um remédio e manda você voltar depois de alguns dias para te analisar de novo. Ao voltar ele pede novos exames e verifica se você melhorou. Se melhorou, problema resolvido, caso contrário ele pode te dar algum outro remédio, e continuar com esse ciclo até que você se recupere e esteja saudável novamente. Mudando os personagens dessa estória para o banco de dados no lugar do paciente e o DBA no lugar do médico, temos aí uma representação figurada do trabalho de Tuning.
Visão parcial de um Statspack Report |
Tudo o que eu escrevi acima vale também para o AWR, outra ferramenta similar, que possui algumas diferenças, entre elas:
- É paga (e não gratuita). Para usá-la deve-se licenciar a option "Diagnostics Pack";
- É uma evolução do Statspack que possui features a mais, tais como: integração com o ADDM, geração de relatórios em formato HTML e Active Reports, integração com ASH, possibilidade de criar templates e baselines dinâmicos ou fixos etc.
Caso você queira aprender um pouco mais sobre a interpretação de AWR Reports (que é bem similar a interpretação de Statspack Reports) assista ao vídeo "Como analisar um AWR Report".
Para se aprofundar e aprender tudo sobre o Statspack, sugiro investir no workshop em videoaulas "Desvendando o Statspack", cujo valor teve redução recentemente e está agora bastante acessível.
Por hoje é só!
Se tiver alguma dúvida deixe o seu comentário.
0 comments:
Postar um comentário