Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

SQL SERVER 2016 – Comparando Planos de Execução

Novas ferramentas trazem novos recursos e, às vezes, eles estão profundamente arraigados no produto e podemos facilmente perdê-los. E o SQL Server 2016 não é diferente. Depois de instalar o CTP, fiquei agradavelmente surpreso ao ver essa adição para ajudar nossos DBAs que estão realizando atividades de ajuste de desempenho e ajuste de consultas.

Então, do que estou falando? Pense em um cenário em que você está fazendo algum tipo de teste em seu ambiente de controle de qualidade. Você parece estar solucionando um cenário de produção e descobriu que esse cenário está funcionando muito bem em seu ambiente de teste. Embora você tenha levado os dados do banco de dados de produção para o servidor de controle de qualidade de teste há menos de um mês, você ainda está confuso com a pergunta – por que essa diferença?

O próximo requisito que todos observam é começar a comparar os planos de execução entre a produção e o ambiente de teste para a mesma consulta. Alguns dos planos de execução em um servidor de produção podem ser executados em páginas às vezes e são difíceis de encontrar diferenças visualmente.

SQL Server 2016 – Comparação de planos

Se você tiver o plano de execução do seu ambiente de produção, vá em frente e abra-o no SQL Server 2016 Management Studio e clique com o botão direito do mouse para obter a seguinte opção:


Você pode ver que é uma adição interessante. O “Compare Showplan” precisa ser selecionado. Agora, selecione o plano que foi gerado a partir de seu ambiente de teste. Isso fará com que ambos os planos de execução sejam exibidos lado a lado, conforme mostrado abaixo. Olhe para a cor roxa nos nós.


Isso representa o fato de que ambos os nós são iguais, mas possuem algumas diferenças em algumas propriedades. Agora cabe a nós clicar com o botão direito e trazer a guia de propriedades.


Aqui podemos ir em frente e comparar cada uma das propriedades do nó para descobrir onde está a discriminação entre os planos. Estes são recursos incríveis adicionados na nova versão.

Tenho certeza que você achará esse recurso de grande utilidade em exercícios de ajuste de consulta em seus ambientes. Dito isso, uma coisa que vi interessante é que, se você pegar um “Plano de Execução Real” ao vivo e tentar compará-lo com um arquivo .sqlplan salvo – ele apresentará um erro como mostrado abaixo:

Deixe-me saber se você usaria esse recurso e se você já usou esse recurso - quais são alguns dos aprimoramentos que você gostaria que esse operador de comparação tivesse? Eu gostaria de aprender com você com certeza.