Usar o rastreador de consultas e o painel "Performance" do Google Analytics: Explore para monitorar a performance da consulta

O rastreador de consultas do recurso "Análises detalhadas" e o painel Performance do recurso "Análises detalhadas" fornecem dados de desempenho passo a passo para uma consulta do recurso "Análises detalhadas". Esses dados podem ajudar a identificar os principais pontos de entrada para solucionar problemas de desempenho com consultas e oferecer recomendações para melhorias.

Rastreador de consultas do Google Analytics: Insights do site

O rastreador de consultas do Google Notícias mostra o progresso de uma consulta do Google Notícias nas três fases da consulta enquanto ela está em execução.

Se uma consulta estiver demorando muito para ser executada, o rastreador de consultas poderá indicar qual fase da consulta está causando o problema de desempenho. Isso é útil para identificar onde os problemas de desempenho podem ocorrer e onde os esforços de otimização podem ser mais eficazes.

O rastreador de consultas aparece quando uma Análise está em execução, desde que o painel Análise Visualização ou o painel Dados esteja aberto.

Conheça o painel Performance

Para acessar o painel Performance da Análise detalhada, clique no link Ver detalhes de performance, que está disponível em qualquer consulta da Análise detalhada que tenha sido executada.

O painel Performance mostra o tempo que a consulta gastou em cada uma das três fases e inclui links para a documentação de desempenho e o painel de atividades do sistema Histórico de consultas, que mostra dados de desempenho atuais e históricos da consulta e da Análise detalhada usada para criar a consulta.

Fases de consulta

Quando uma Análise do Looker executa uma consulta de banco de dados, ela é executada em três fases, conforme segue:

Fase de inicialização da consulta

Durante a fase de inicialização da consulta, o Looker executa todas as tarefas necessárias antes do envio da consulta ao seu banco de dados. A fase de inicialização da consulta inclui as seguintes tarefas:

A página de documentação Entenda as métricas de desempenho da consulta descreve como usar a análise detalhada Métricas de desempenho da consulta na Atividade do sistema. A fase de inicialização da consulta do rastreador de consultas inclui os eventos descritos na fase de trabalhador assíncrono, fase de inicialização e fase de processamento de conexão da Análise detalhada Métricas de desempenho da consulta.

Fase de execução da consulta

Na fase de execução da consulta, o Looker entra em contato com o banco de dados, faz consultas e retorna os resultados. Problemas de desempenho durante essa fase podem indicar um problema com o banco de dados externo, como PDTs que levam muito tempo para ser recriados e podem precisar de otimização ou tabelas de banco de dados externas que podem precisar de otimização. A fase de execução da consulta inclui as seguintes tarefas:

  • Criar PDTs no banco de dados que são necessários para a consulta "Explorar"
  • Executar a consulta solicitada no banco de dados

A página de documentação Entenda as métricas de desempenho da consulta descreve como usar a análise detalhada Métricas de desempenho da consulta na Atividade do sistema. A fase Consulta em execução do rastreador de consultas inclui os eventos descritos na fase de consultas principais da análise detalhada Métricas de desempenho da consulta.

Confira algumas etapas que você pode seguir se tiver problemas de desempenho durante essa fase:

  • Crie análises usando mesclagens many_to_one sempre que possível. A mesclagem de visualizações do nível mais granular ao mais detalhado (many_to_one) geralmente oferece a melhor performance de consulta.
  • Maximize o cache para sincronizar com suas políticas de ETL sempre que possível para reduzir o tráfego de consulta do banco de dados. Por padrão, o Looker armazena em cache as consultas por uma hora. É possível controlar a política de armazenamento em cache e sincronizar as atualizações de dados do Looker com seu processo de ETL aplicando datagroups nas análises usando o parâmetro persist_with. O Looker pode ser integrado ao pipeline de dados do back-end para maximizar o uso do cache sem o risco de analisar dados desatualizados. As políticas de armazenamento em cache nomeadas podem ser aplicadas a um modelo inteiro ou a análises detalhadas e tabelas derivadas persistentes (PDTs, na sigla em inglês) individuais.
  • Use o recurso de awareness agregado do Looker para criar agrupamentos ou tabelas de resumo que o Looker pode usar para consultas sempre que possível, especialmente para consultas comuns de bancos de dados grandes. Também é possível usar a consciência agregada para melhorar drasticamente a performance de painéis inteiros. Consulte o tutorial de consciência agregada para mais informações.
  • Use PDTs para consultas mais rápidas. Converta análises detalhadas com muitas mesclagens complexas ou sem desempenho ou dimensões com subconsultas ou subseleções em PDTs para que as visualizações sejam mescladas com antecedência e estejam prontas antes do tempo de execução.
  • Se o dialeto do banco de dados oferecer suporte a PDTs incrementais, configure PDTs incrementais para reduzir o tempo que o Looker leva para recriar tabelas de PDT.
  • Evite mesclar visualizações em análises em chaves primárias concatenadas definidas no Looker. Em vez disso, faça a mesclagem nos campos básicos que compõem a chave primária concatenada da visualização. Como alternativa, recrie a visualização como um PDT com a chave primária concatenada predefinida na definição SQL da tabela, em vez de no LookML da visualização.
  • Use a ferramenta Explain in SQL Runner para comparar. O EXPLAIN gera uma visão geral do plano de execução de consulta do seu banco de dados para uma determinada consulta SQL, permitindo que você detecte componentes de consulta que podem ser otimizados. Saiba mais na postagem da Comunidade Como otimizar o SQL com EXPLAIN.
  • Declare índices. Para conferir os índices de cada tabela diretamente no Looker do SQL Runner, clique no ícone de engrenagem em uma tabela e selecione Mostrar índices.

    As colunas mais comuns que podem se beneficiar de índices são datas importantes e chaves estrangeiras. Adicionar índices a essas colunas aumenta a performance de quase todas as consultas. Isso também se aplica a PDTs. Os parâmetros do LookML, como indexes, sort keys e distribution, podem ser aplicados de maneira adequada.

Fase de processamento de resultados

Durante a fase de processamento de resultados, o Looker processa e renderiza os resultados da consulta. A fase de processamento de resultados inclui as seguintes tarefas:

A página de documentação Entenda as métricas de desempenho da consulta descreve como usar a análise detalhada Métricas de desempenho da consulta na Atividade do sistema. A fase de processamento de resultados do rastreador de consultas inclui os eventos descritos na fase pós-consulta da Análise detalhada Métricas de desempenho da consulta.

Confira algumas etapas que você pode seguir se tiver problemas de desempenho durante essa fase:

  • Use recursos como mesclar resultados, campos personalizados e cálculos de tabela com moderação. Esses recursos são destinados a serem usados como provas de conceito para ajudar a projetar seu modelo. É recomendável codificar em modo fixo todos os cálculos e funções usados com frequência no LookML, que vai gerar SQL para processamento no seu banco de dados. Cálculos excessivos podem competir pela memória Java na instância do Looker, fazendo com que ela responda mais lentamente.
  • Limite o número de visualizações incluídas em um modelo quando houver um grande número de arquivos de visualização. Incluir todas as visualizações em um único modelo pode diminuir a performance. Quando um grande número de visualizações está presente em um projeto, considere incluir apenas os arquivos de visualização necessários em cada modelo. Considere usar convenções de nomenclatura estratégicas para os nomes de arquivos de visualização e permitir a inclusão de grupos de visualizações em um modelo. Um exemplo está descrito na documentação do parâmetro includes.
  • Evite retornar um grande número de pontos de dados por padrão nos blocos do painel e nos Looks. Consultas que retornam milhares de pontos de dados vão consumir mais memória. Limite os dados sempre que possível aplicando filtros do front-end a painéis, Looks e Análises, e no nível da LookML com os parâmetros required filters, conditionally_filter e sql_always_where.
  • Faça o download ou envie consultas usando a opção Todos os resultados com moderação, porque algumas consultas podem ser muito grandes e sobrecarregar o servidor do Looker durante o processamento.