O tempo de resposta de uma aplicação comercial é um requisito quase que obrigatório para o seu sucesso. Diversos fatores contribuem para a eficiência das aplicações desenvolvidas, a performance das consultas à base de dados é um desses fatores.
Para otimizar as consultas, existem muitas práticas e ferramentas, como índices, filtros, redução do número de colunas, etc. E é muito aconselhável lançar mão do maior número possível.
Muitas vezes, ao implementar consultas, seja via procedure ou comandos ad-hoc, não conseguimos testar sua eficiência, pois, uma vez executada, o SQL Server guarda informações sobre sua execução para otimizar futuros acessos. Este é um poderoso recurso, principalmente para acelerar o retorno das queries executadas com maior frequência.
Para testar a performance real das consultas implementadas, é necessário desconsiderar a ação dos buffers e caches. Para isso, pode-se utilizar os comandos:
Para otimizar as consultas, existem muitas práticas e ferramentas, como índices, filtros, redução do número de colunas, etc. E é muito aconselhável lançar mão do maior número possível.
Muitas vezes, ao implementar consultas, seja via procedure ou comandos ad-hoc, não conseguimos testar sua eficiência, pois, uma vez executada, o SQL Server guarda informações sobre sua execução para otimizar futuros acessos. Este é um poderoso recurso, principalmente para acelerar o retorno das queries executadas com maior frequência.
Para testar a performance real das consultas implementadas, é necessário desconsiderar a ação dos buffers e caches. Para isso, pode-se utilizar os comandos:
-- Limpa cache de procedures
DBCC FREEPROCCACHE
-- Limpa buffers (comandos add-hoc)
DBCC DROPCLEANBUFFERS
DBCC FREEPROCCACHE
-- Limpa buffers (comandos add-hoc)
DBCC DROPCLEANBUFFERS
Nenhum comentário:
Postar um comentário