O banco de dados é uma das partes mais importantes de qualquer aplicação e da mesma forma que as linguagens de programação que usamos, as vezes é necessário depurar o que está acontecendo dentro dele.
Uma das coisas que sempre devemos fazer ao digitar uma query nova que será utilizada pelo nosso programa é analisar o seu custo computacional no banco. Para conseguirmos fazer isso no PostgreSQL basta ativarmos uma diretriz antes da query (usaremos um banco de dados de filmes como exemplos que peguei aqui):
Como podemos ver o retorno da query acima deixou de ser os resultados da tabela propriamente dita e passou a ser a estratégia de execução da query. No caso aqui o que aconteceu foi primeiro um escaneamento sequêncial da tabela languages para depois fazer a junção com a tabela film através dos hashes gerados em cada operação.
Essa análise já é completa, mas aprendendo mais sobre o significado dos resultados eu encontrei uma ferramenta excelente que ajuda a fazer uma análise mais visual do retorno do explain, este excelente site permite fazer uma análise mais gráfica e compartilhável da query.
Já entrando no site podemos ver algumas instrução, primeiro é necessário acrescentarmos algumas diretivas no comando explain para formatar da maneira adequada para a leitura:
Após isso também colamos a query sendo analisada (muito cuidado aqui para não expor nenhuma informação que você não deva) e podemos dar um título para nossa análise. Agora enviamos e recebemos um gráfico muito interessante sobre as etapas de execução, os índices utilizados e muitas informações.
![]() |
Cada operação tem seus detalhes descrito em cada caixa |
Nenhum comentário:
Postar um comentário