Arquivo por tag: performance

out 30

Perfmon e SQL Server

O Perfmon do Windows possui muitos contadores de SQL, hoje veremos alguns que ajudam muito em troubleshooting de performance. Ao fazer uma análise de lentidão é muito importante termos dados armazenados para podermos identificar com maior clareza o que realmente está acontecendo. Portanto, sugiro utilizar sempre o Performance Monitor do Windows para armazenarmos estes dados …

Continue lendo »

set 16

Análise de Lentidão – II

Mais um caso interessante onde a soma de fatores fez com que uma transação que deveria demorar 1 segundo demorasse mais de uma hora, mesmo com memória de sobra, processamento abaixo dos 10% e nenhum usuário conectado além do administrator.         Cenário 1.   SQL Server 2008 R2 Standard com Failover Cluster em …

Continue lendo »

set 02

Análise de Lentidão

    Vamos relatar um caso real de análise de lentidão, chegando a dar timeout em alguns casos e registrando deadlocks:       Cenário   1.   A carga é realizada em lote através de um TXT, com centenas ou milhares de transações tratadas pela aplicação, enviadas à Secretaria da Fazenda e registradas na …

Continue lendo »

ago 30

Top queries por consumo

Uma situação muito comum é precisar levantar quais são as queries com maior tempo de CPU, I/O ou consumo de páginas em memória.   Ajustei este script disponível no próprio BOL pra pegar também as operações de leitura do disco da DMV sys.dm_exec_query_stats fazendo um cross apply com a sys.dm_exec_sql_text pegando o texto das queries e sys.dm_exec_query_plan …

Continue lendo »

nov 14

Consumo de CPU por base

Pra quem gerencia instâncias com mais de uma base, fica fácil evidenciar. Hoje logo cedo precisei identificar qual base de um servidor era a maior responsável pelo consumo de CPU. Este script é uma baita de uma mão na roda:   WITH DB_CPU_Stats AS (SELECT DatabaseID, DB_Name(DatabaseID) AS [DatabaseName], SUM(total_worker_time) AS [CPU_Time_Ms] FROM sys.dm_exec_query_stats AS …

Continue lendo »

out 25

Seu job de rebuild demora muito?

Muitos ambientes possuem um job agendado para fazer o rebuild dos índices mas com o constante crescimento da base acabam chegando próximos da janela ou, quando não monitorados, até passam do horário permitido. Existe uma alternativa que se aplica a grande maioria dos ambientes. Para entendermos melhor, vamos relembrar os tipos de fragmentação e a …

Continue lendo »

jul 05

10 dicas para otimizar o SQL Server 2008 R2

Este webcast do experiente Vitor Fava, explica muito bem 10 excelentes dicas para otimizar a performance do SQL Server 2008 R2, mas a maioria se aplica a outras versões do SQL:     Verifique também o blog dele, tem ótimos artigos: http://vfava.wordpress.com/  .

jun 21

Relatórios do SQL 2008

lista de reports

Existem muitos relatórios interessantes prontos no SQL Server 2008, vamos ver como acessá-los e um breve resumo sobre os principais.   Vamos clicar com o botão direito na instância e selecionar Reports | Standard Reports | Report Desejado como na imagem abaixo:     Configuration Changes History Este relatório é bem interessante, permite verificar quais …

Continue lendo »

jun 15

Identificando tabelas mais usadas da instância

Considero este um dos posts mais importantes que já escrevi. Frequentemente precisamos saber qual a tabela mais utilizada ou qual o índice mais utilizado para tomarmos as providências de melhoria na performance como criar um arquivo de dados exclusivo para a tabela, verificar se o índice está apropriado, etc. Esta semana vimos no artigo Encontrando …

Continue lendo »