Home - www.devmedia.com.br

Tuning - Plano de Execução - Parte 1

O SQL Server 2000 possui uma excelente ferramenta para análise de performance: o Plano de Execução Gráfico de Queries.

O Plano de Execução corresponde a uma seqüência de etapas empregadas pelo SQL Server 2000 no processo de execução de queries. Se a query foi executada recentemente, o plano estará presente no cache do banco e será reutilizado; caso contrário será gerado um novo plano para a query em questão.

No plano de execução gráfico, cada etapa do processamento da query é representada por um objeto diferente. O roteiro da execução é determinado por um conjunto de setas que ligam esses objetos; assim pode-se facilmente percorrrer por todas as etapas.

O componente do SQL Server 2000 responsável pela construção do plano é chamado de otimizador; e é ele quem decide que indices serão utilizados, o modêlo interno de join, se serão criadas tabelas temporárias para processar o join, etc.

Para gerar o plano de execução gráfico de uma query, abra o Query Analyzer , selecione o database NorthWind e digite o o comando abaixo:

select * from Orders

Na barra de ferramentas do Query Analyzer , selecione Display Estimated Execution Plan na opção Query e observe o plano de execução gerado na parte inferior da tela:

Note que a query não foi executada, somente ocorreu a geração do plano. Repare também que existem duas abas na parte inferior da tela – Estimated Execution Plan e Messages .

Selecione agora Show Execution Plan , que pode ser encontrado algumas linhas abaixo da opção anterior. Logo após pressione <F5> ou clique em .Diferentemente da opção anterior, observe agora na parte inferior da tela que a query foi executada em Results e o plano de execução encontra-se disponível em Execution Plan.

Bem, o objetivo desse primeiro contato foi demonstrar onde e como gerar o plano de execução de uma query. No próximo artigo aprenderemos a ler um plano de execução, identificando objetos relacionados à performance.

Um forte abraço a todos e não percam o próximo artigo!

Paulo Ribeiro

 

Paulo Ribeiro (psribeiro@hotmail.com) é Microsoft MCDBA e membro da equipe editorial da SQL Magazine. Atua como DBA sênior em SQL Server na Livraria e Papelaria Saraiva S/A.

  Monitorando deadlocks com Trace Flags    
  Monitorando deadlocks com o Profiler    
  Variáveis tipo TABLE    
  Tabelas Temporárias    
  Subqueries Parte II: Queries correlatas    
  Subqueries – Parte I    
  Gerenciando Bloqueios–Parte II    
  Gerenciando Bloqueios–Parte I    
  Porque qualificar o owner na chamada de stored-procedures    
  Explorando os Tipos de Join – Parte II    
  Explorando os Tipos de Join – Parte I    
  Versões existentes do SQL Server 2000    
  Tuning - Plano de Execução no SQL Server - Parte 4    
  Tuning - Plano de Execução no SQL Server - Parte 3    
  Tuning - Plano de Execução no SQL Server - Parte 2    
  Tuning - Plano de Execução no SQL Server - Parte 1    
  Tuning - Estatísticas de I/O    
  Desfragmentando Índices no SQL Server    
  Procedures Não Documentadas
no SQL Server 2000 Parte 2
   
  Procedures Não Documentadas
no SQL Server 2000.
   
  SQL Server 2005 - YUKON    
  SQL Server 2000: o Contra-Ataque.    
  Boas-Vindas    
     

 

Todos os direitos reservados: DevMedia Group
SQL Magazine - 2004