No último treinamento de SQL Server Internals da CDB – Data Solutions utilizei durante todo o treinamento o Azure Data Studio. Durante o treinamento, alguns participantes me comentaram que nunca haviam visto alguém utilizar tanto o ADS.
Como a maior parte dos participantes não sabiam como ler o plano de execução de uma query no ADS, resolvi fazer esse pequeno post para deixar registrado. 🙂
Nos exemplos abaixo estou utilizando o ADS, versão 1.29.0 em um Ubuntu 20.04, se quando você estiver lendo este post algo estiver diferente confira a versão. #ficaadica
No editor de query existe um botão chamado Explain. Esta opção gera o plano estimado da query, ou seja, exibe o plano criado baseado nas estatísticas atuais.
Esse é o mesmo plano de execução que você está acostumado a ver no SSMS, porém há uma vantagem no ADS que é o Top Operations.
Rodrigo, mas me disseram que não existe o Plano Atual (Actual Plan)? Existe! O plano atual é o real, ou seja, ele será exibido depois da execução do comando e ele poderá ter diferença do previsto por diversos motivos, como por exemplo, se as estatísticas estiverem desatualizadas.
Para visualizar o Actual Plan você pode utilizar o mesmo atalho do SSMS (Crtl + M) ou pela paleta de comando com atalho Crtl+Shift+P. Isso irá abrir a paleta de comando e basta digitar “run current query with actual plan”. Ao digitar “run current “ já irá aparecer a opção. 😉
No ambiente Windows, sempre gostei da ferramenta Plan Explorer da Sentry, mas por felicidade existe uma extension da Sentry chamada SentryOne Plan Explorer Extension for Azure Data Studio que ajuda muito na leitura do plano de execução no ADS.
Abaixo segue exemplo de como os dados do plano de execução são apresentados com essa extensão:
Se você tiver algum problema ou sugestão do produto poderá reportar no GitHub do projeto.
Por hoje era isso pessoal, espero que vocês tenham apreciado esse post e possam dar uma chance ao ADS no dia-a-dia de vocês. Se ainda não instalou (É de graça!) e pode ser baixado no link do Microsoft Docs.
Até o próximo post! 😊