Todos os produtos
Search
Central de documentação

AnalyticDB:Analisar consultas com planos de execução

Última atualização: Jun 27, 2026

O recurso de diagnóstico SQL do AnalyticDB for MySQL visualiza o plano de execução de uma consulta SQL como um diagrama em árvore. Essa árvore possui duas camadas: stage e operador. Este tópico descreve como usar as árvores de plano de execução nessas camadas para analisar o desempenho das consultas.

Árvore de plano de execução da camada de stage

A árvore de plano de execução da camada de stage compõe-se de vários nós de stage, com dados fluindo de baixo para cima. O processo começa nos stages que contêm operadores de varredura para ler os dados. Em seguida, os dados passam por stages intermediários até o nó raiz, no topo, retornar os resultados da consulta ao cliente.

A árvore de plano de execução da camada de stage fornece as seguintes informações:

  • Informações básicas

    Cada retângulo no diagrama representa um stage e contém informações como ID do stage, tipo de saída de dados e duração ou memória. O uso de memória é exibido ao ordenar o plano selecionando By Memory.

    Nota

    Um ícone de alerta vermelho em um stage na árvore de plano de execução indica potencial de otimização.

  • Linhas de saída

    O número na linha que conecta dois stages adjacentes representa a quantidade de linhas que o stage upstream envia para o stage downstream. Quanto maior o volume de linhas transferidas, mais espessa será a linha de conexão.

  • Método de saída de dados

    Indica o método usado para transferir dados entre stages upstream e downstream. O AnalyticDB for MySQL oferece suporte aos seguintes métodos de saída de dados:

    Método de saída

    Descrição

    Broadcast

    Copia os dados de cada nó de computação em um stage upstream para todos os nós de computação no stage downstream.1-1

    Repartition

    Particiona os dados de cada nó de computação em um stage upstream com base em regras específicas e os distribui para os nós de computação especificados no stage downstream.1-2

    Gather

    Envia dados de cada nó de computação em um stage upstream para um único nó de computação específico no stage downstream.1-3

  • Top 10 stages por uso de memória ou duração de execução

    A aba Top 10 Nodes in Descending Order by Duration or Memory, à direita da árvore de plano de execução, lista os IDs e as porcentagens correspondentes dos 10 stages que representam a maior parcela da duração total da consulta ou do uso total de memória.

    Nota
    • Por padrão, os stages são classificados By Duration. Também é possível selecionar By Memory no canto superior direito da árvore de plano de execução.

    • A aba Top 10 Nodes in Descending Order by Duration or Memory não exibe stages cujo uso de memória ou duração de execução represente menos de 1% do total.

    • Devido a diferenças nos métodos estatísticos, a soma das porcentagens de duração ou memória de todos os stages em uma consulta pode não ser exatamente 100%.

  • Diagnostic Results

    Clique em um stage, como Stage[1], na árvore de plano de execução para visualizar seus detalhes no painel Diagnostic Results à direita. Estão incluídos dois tipos de diagnósticos:

    • Diagnóstico de stage: Fornece uma descrição detalhada dos resultados de diagnóstico para o stage alvo, incluindo problemas identificados, como broadcast de grande volume de dados ou skew de dados, além das recomendações de otimização correspondentes.

    • Diagnóstico de operador: Exibe apenas os nomes dos operadores problemáticos no stage atual e um breve resumo dos problemas. Para descrições detalhadas e soluções de otimização, consulte a árvore de plano de execução da camada de operador. Para obter mais informações, veja Árvore de plano de execução da camada de operador.

    Para obter mais informações sobre os resultados de diagnóstico de um stage, consulte Resultados de diagnóstico no nível de stage.

  • Statistics

    Abaixo do painel Diagnostic Results, a seção Statistics exibe métricas do stage selecionado.

    Métrica

    Descrição

    Peak Memory

    Memória de pico consumida pelo stage. O sistema seleciona automaticamente a unidade (Bytes, KB, MB, GB ou TB) com base no consumo real de memória.

    Cumulative Duration

    Soma dos tempos de execução de todos os operadores dentro do stage, agregada em todos os nós de computação e threads. O sistema seleciona automaticamente a unidade (ms, s, m ou h) com base na duração real.

    Nota

    Essa duração cumulativa não pode ser comparada diretamente com a duração total da consulta.

    Output Rows

    Quantidade de linhas geradas pelo stage.

    Amount of Output Data

    Tamanho dos dados gerados pelo stage. O sistema seleciona automaticamente a unidade (Bytes, KB, MB, GB ou TB) conforme o tamanho real dos dados.

    Input Rows

    Quantidade de linhas recebidas pelo stage.

    Amount of Input Data

    Tamanho dos dados recebidos pelo stage. O sistema seleciona automaticamente a unidade (Bytes, KB, MB, GB ou TB) conforme o tamanho real dos dados.

    Scanned Rows

    Número de linhas varridas pelo stage.

    Nota

    Esta métrica está disponível apenas se o stage contiver um operador de varredura.

    Scan Size

    Tamanho dos dados varridos pelo stage. O sistema seleciona automaticamente a unidade (Bytes, KB, MB, GB ou TB) conforme o tamanho real dos dados.

    Nota

    Esta métrica está disponível apenas se o stage contiver um operador de varredura.

Árvore de plano de execução da camada de operador

O plano de execução da camada de operador consiste em múltiplos operadores. Cada retângulo no diagrama representa um operador, e os dados fluem de baixo para cima. O processo inicia com operadores na base da árvore, como TableScan e RemoteSource, que fazem a varredura dos dados ou os recebem via rede. Os dados então passam por operadores intermediários. Por fim, um operador raiz, como StageOutput ou Output, no topo, envia os dados para um stage downstream ou retorna o resultado final da consulta ao cliente.

Para visualizar a árvore de plano de execução da camada de operador, passe o mouse sobre um stage e clique em View Stage Plans na caixa pop-up para acessar a página de detalhes do plano desse stage.

A árvore de plano de execução da camada de operador fornece as seguintes informações:

Nota

Um ícone de alerta vermelho em um operador na árvore de plano de execução indica potencial de otimização.

  • Informações básicas

    Cada retângulo no diagrama representa um operador e contém seu nome, ID e propriedades, como condições e algoritmo de junção para um operador Join, além da duração ou memória. O uso de memória aparece ao ordenar o plano selecionando By Memory.

  • Linhas de saída

    O número na linha que conecta dois operadores adjacentes indica quantas linhas o operador upstream envia ao operador downstream. Linhas mais espessas representam um volume maior de linhas transferidas.

  • Top 10 operadores por uso de memória ou duração de execução

    A aba Top 10 Nodes in Descending Order by Duration or Memory, à direita da árvore de plano de execução, mostra os IDs e as proporções correspondentes dos 10 operadores que mais contribuem para a duração total da consulta ou para o uso total de memória.

    Nota
    • Por padrão, a classificação dos operadores segue a opção By Duration. Alternativamente, selecione By Memory no canto superior direito da árvore de plano de execução.

    • Operadores com uso de memória ou duração de execução inferior a 1% do total não aparecem na aba Top 10 Nodes in Descending Order by Duration or Memory.

    • A soma das porcentagens de duração ou memória de todos os operadores em um stage pode não totalizar 100% devido a variações nos métodos estatísticos.

  • Diagnostic Results

    Clique em um operador, como Join[36148], na árvore de plano de execução para visualizar seus detalhes no painel Diagnostic Results à direita. Os detalhes incluem problemas identificados, como explosão de dados ou tabela direita superdimensionada em uma junção, juntamente com recomendações de otimização. Para saber mais sobre diagnósticos de operadores, consulte Resultados de diagnóstico no nível de operador.

  • Statistics

    Logo abaixo do painel Diagnostic Results, a seção Statistics apresenta as métricas do operador selecionado.

    Métrica

    Descrição

    Peak Memory

    Memória de pico consumida pelo operador. A unidade (Bytes, KB, MB, GB ou TB) é definida automaticamente pelo sistema conforme o consumo real.

    Time Consumed

    Duração média do operador em um determinado nível de simultaneidade. O sistema escolhe automaticamente a unidade (ms, s, m ou h) baseada na duração efetiva.

    Nota

    Esta duração pode ser comparada diretamente com a duração total da consulta.

    Output Rows

    Total de linhas produzidas pelo operador.

    Amount of Output Data

    Volume de dados gerado pelo operador. A unidade (Bytes, KB, MB, GB ou TB) é ajustada automaticamente conforme o tamanho real.

    Input Rows

    Total de linhas recebidas pelo operador.

    Amount of Input Data

    Volume de dados recebido pelo operador. A unidade (Bytes, KB, MB, GB ou TB) é ajustada automaticamente conforme o tamanho real.

    Builder Statistics

    Inclui informações sobre o builder, como tipo, memória de pico, duração, linhas de entrada/saída e volume de dados. Os seguintes tipos de builder estão disponíveis:

    • HashBuilder: Utilizado para construir uma tabela hash destinada a cálculos de hash join.

    • SetBuilder: Utilizado para criar uma estrutura de conjunto para cálculos de semi-join.

    • NestLoopBuilder: Utilizado para executar cálculos de nested-loop join.

    Nota

    Esta métrica aplica-se exclusivamente a operadores de junção.

    Properties

    As propriedades variam conforme o tipo de operador. Por exemplo, as propriedades de um operador de junção incluem o tipo e o método de junção. Para mais detalhes, consulte Operadores.