Sql server Tuning Advisor – Performance + Tunning + ìndices no BD

Para quem procura uma boa forma de melhorar a performance do seu banco. Eis aqui um bom caminho e uma resposta.
* DTA (DataBase Engine Tunning Advisor). (Somente na versão Enterprise)
 
Sempre é útil criarmos índices para melhorar a performance do BD.
Porém ìndice é bom, mas muito índice é demais. Sabendo disto, lá vai mais uma informação, somente pode haver 240 índices no-clustered no BD, ou seja cuidado com o exagero.
 

Esta ferramenta te dá algumas opções como:

  1. Analisar Querys e performance em cima dele, dando resultados como: Melhoria de Indíces e Particionamento de Tabelas Gigantes(somente realmente grandes vale a pena exemplo: 50 GB de disco ou milhoes de registro)
  2. Em cima de uma única Query, rodar no seu BD para verificar tb os índices.
  3. Ou uma técnica bem simples, que é usar a PROFILER executar ele, usando alguns fitros como: (Fique analisando as querys por 3 horas mais ou menos e salve o trace para que possa ser usado pelo DTA), fazendo assim que ele analise por exemplo querys rodadas por determinado sistema para ver onde é o gargalo.
    1. DataBaseName  – Like ‘NomeBanco’
    2. TextData – Like ‘Select%’ – NotLike ‘Delete%’, ‘Update%’, ‘Insert%’

  DTA ( DataBase Engine Tuning Advisor)

No menu Start / All Programs / Microsoft SQL Server 2005, / Performance Tools/ Database Engine Tuning Advisor.

Após abrir o DTA, você vai notar que ele tem algumas opções de qual banco de dados vai fazer este exame.

  1. Basta clicar no Check box, do BD que deseja, escolhe o nome do Database Workload BD.
  2. Logo depois de seguir os passos acima, ou seja, vc tem o arquivo com SQL ou TRC(trace do profiler), vc escolhe a opção do WorkLoad ( tipo de trabalho que será carregado)..
  3. Clique em Browse busque o arquivo com os SELECTS ou TRACE que vc quer que ele analyze. Veja a figura a baixo.

 

Nas opções avançadas deixe tudo padrão, pois caso vc modifique alguma coisa pode acarretar que o DTA ele dé a sugestão e também faça a ação. O caso se ele criar Indices para vc nao tem problema. O problema maior e se ele deleta um índice importante. Em ingles deixe Keep(deixar), caso vc modificou alguma coisa.

Clique em Actions->Start Analysis (para começar a analisar)

Após terminar a anáise vai ser aberto algumas opções como RECOMENDAÇÔES. Veja na figura abaixo.

IMPORTANTE: Note que tem uma coluna chamada Recomendation, se ela estiver em branco, não tem que fazer ação nenhuma.

Caso se ela tiver, terá informações como CREATE, DROP, DELETE, que vai indicar para criar índices, deletar índices.

Agora você pode salvar em XML e calmamente analisar as recomendações que ele fez.

Fazer a implementação VIA Comando DOS

Também pode ser feito via Prompt-DOs basta executar o comando acima. dta -? | more

 IMPORTANTE: Pessoal , uma coisa muito importante, o DTA ele somente dá dois tipos de Recomendações ìndices e Particionamento e até análises de indireto de querys com problemas.

Ex: Se vc usar BD Nortwind

  1. Query usando índice Clusterizado (PK)
    • set statistics io on — ligando as estatisticas
    • go
    • select employed , customerid from  orders where employeid=7
    • Resultado da query (estatistica)
    • logical reeds 24 (24 leituras logicas)
  2. Query usando índice não Clusterizado (criado por alguem )  com With (somente o sql server 2005 usa exta sintaxe
    • set statistics io on — ligando as estatisticas
    • go
    • select employed , customerid from with (index=IX_employed)  orders where employeid=7
    • Resultado da query (estatistica)
    • logical reeds 97 (97 leituras logicas)

RESUMINDO:

Vc verifica que o indice criado IX_employed, foi criado porém é um índice ruim, por isto pode ser removido este indice.

Este é somente um exemplo para você poder interpretar as recomendações do DTA.

Bom era isto.

Boa sorte, qq coisa mandem email beleza? t+

 

 

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s