Como encontrar as consultas que estão utilizando paralelismo.
O que é paralelismo?
Você provavelmente já ouviu a frase “uma mão lava a outra e as duas lavam o rosto. A ideia é que dividir uma tarefa entre um número de pessoas resulta em cada pessoa fazendo menos. Do ponto de vista do indivíduo, o trabalho parece muito mais fácil, mesmo que uma quantidade similar de trabalho esteja sendo feita em geral. Mais importante ainda, se as pessoas extras podem realizar a alocação de trabalho ao mesmo tempo, o tempo total necessário para a tarefa é reduzido.
Agora falando de tecnologia as pessoas seriam os núcleos dos processadores trabalhando juntas em prol de um objetivo. A consulta que eu vou deixar abaixo para vocês, verifica dentro dos planos de execução a utilização do paralelismo.
SELECT p.dbid AS IDBancoDeDados, p.objectid AS IDobjeto, p.query_plan AS PlanoDeExecucao, q.TEXT AS TextoDaConsulta, cp.usecounts QuantidadeDeExec, cp.size_in_bytes AS TamanhoEmBytes, cp.plan_handle AS PlanHandle FROM sys.dm_exec_cached_plans cp CROSS APPLY sys.dm_exec_query_plan(cp.plan_handle) AS p CROSS APPLY sys.dm_exec_sql_text(cp.plan_handle) AS q WHERE cp.cacheobjtype = 'Compiled Plan' AND p.query_plan.value('declare namespace p="http://schemas.microsoft.com/sqlserver/2004/07/showplan"; max(//p:RelOp/@Parallel)', 'float') > 0
Lembrando que, se uma consulta é executada em paralelo, significa que é uma consulta que o SQL Server pensa que é grande o suficiente para ser executado em paralelo. MAX_DOP e cost_threshold_for_parallelism conduzem o comportamento. MAX_DOP deve ser configurado para corresponder o número de processadores físicos no servidor, se necessário.
O próximo passo é entender o que fazer quando você os encontrar essas consultas que utilizam paralelismo verifique a indexação no DTA para obter recomendações, simplifique a consulta, remova ORDER BYs e GROUP BYs, se não forem necessários estas são algumas dicas para ajudá-lo.
Grande Abraço!
Wesley Mota
Latest posts by Wesley Mota (see all)
- The Ultimate Guide to Gry Online Ruletka - novembro 14, 2024