quarta-feira, 5 de outubro de 2016

Live Query Statistics e Live Execution Plan



Uma das atividades mais comuns em consultoria é a análise de consultas de baixo desempenho, problema sério que afeta diversas aplicações.  O SQL Server 2016 trouxe um importante aliado para identificar gargalos no desempenho de consultas, Live Query Statistics.

No Management Studio este recurso aparece no menu Query opção Include Live Query Statistics.



Quando habilitamos a opção acima, o Management Studio utiliza a visão sys.dm_exec_query_profiles para obter as informações de execução e mostrar graficamente. 

As permissões SHOWPLAN no banco de dados e VIEW SERVER STATE na instância são necessárias para utilizar Live Query Statistics.

Segue exemplo abaixo:



O Management Studio mostra o progresso da execução como na figura acima, ficando claro as etapas que representam gargalos na execução. 

CUIDADO!!! Live Query Statistics NÃO substitui Actual Execution Plans, pois existem algumas limitações:

- A consulta roda mais lenta quando Live Query Statistics está habilitado.
- Alertas de uso da TEMPDB não aparecem em Live Query Statistics.
- Uso de índices Columnstore não aparecem em Live Query Statistics.
- Consultas em Memory Optimized Tables não são suportadas por Live Query Statistics.
- Natively Compiled Stored Procedures não são suportadas por Live Query Statistics.

Uma boa notícia é que Live Query Statistics pode ser utilizado no SQL Server 2014 SP1.


CONCLUSÃO

Live Query Statistics é uma alternativa interessante para analisar consultas de média e longa duração, identificando claramente etapas que representam gargalos importantes.

Até o próximo post.

Saudações Tricolores,
Landry