O Query Insight combina logs de consultas lentas com a tabela do sistema hg_table_info para oferecer uma visão completa do comportamento de qualquer consulta — consumo de recursos, metadados de tabela, plano de execução e atividade de bloqueio. Use-o para diagnosticar consultas lentas, investigar falhas e determinar se conflitos de DDL ou bloqueios de tabela causaram uma falha.
Pré-requisitos
Antes de começar, verifique se você:
Fez login em uma instância do Hologres. Para mais detalhes, consulte Log on to an instance
Tem as permissões necessárias para consultar logs de consultas lentas. Para mais detalhes, consulte Slow query log viewing and analysis
Limiares de coleta de dados
O Query Insight utiliza duas fontes de dados, cada uma com suas próprias regras de coleta. Revise esses limiares antes de consultar para saber quando os dados estarão disponíveis.
|
Dado |
Regra de coleta |
Observações |
|
Instruções DML |
Tempo de execução > 100 ms |
Limiar padrão do log de consultas lentas |
|
Instruções DDL |
Todas as instruções DDL são coletadas |
Apenas instruções com tempo de execução > 1 s aparecem nos resultados de pesquisa |
|
Planos de execução |
Tempo de execução > 10 s |
Os planos são extraídos do campo Plan nos logs de consultas lentas |
|
Metadados de tabela |
Coletados uma vez por manhã |
Os dados ficam disponíveis no modelo T+1 (dia seguinte); tabelas criadas hoje são consultáveis amanhã |
|
Análise de conflitos de DDL |
Verifica a janela de 1 minuto antes e após a execução da consulta |
— |
Acesse o Query Insight
Access Query Insight Directly
O Query Insight está disponível em três locais no HoloWeb. Na página do Query Insight, você pode visualize Query Metadata e Table Metadata, além de realizar Plan Visualization e Table Lock Analysis.
Acesse diretamente em Diagnostics and Optimization:
Faça login no Hologres Management Console.
No painel de navegação à esquerda da barra de menu superior, selecione a região de destino.
Clique em Go to HoloWeb.
No menu superior, selecione Diagnostics and Optimization. Em seguida, no painel de navegação à esquerda, clique em Metadata Warehouse Analysis > Query Insight.

Navigate to Query Insight
Acesse a partir do SQL Editor:
No SQL Editor do HoloWeb, qualquer instrução SQL com tempo de execução superior a 1 s que contenha um Query ID exibe um link para o Query Insight. Clique em o link para abrir a consulta diretamente no Query Insight.
Acesse a partir de Historical Slow Queries:
Na lista de consultas da página Historical Slow Queries, clique em o ícone
na coluna Actions da consulta desejada para acesse o Query Insight.
Query Metadata
Os metadados de consulta são originados dos logs de consultas lentas do Hologres. Na aba Query Metadata, selecione o Instance Name e o Query ID e clique em Search.
A aba exibe as seguintes seções:
Informações básicas
Mostra o ID da instância, o banco de dados e a versão do Milvus para a consulta.
Informações da consulta
Mostra o usuário, o status de execução e o mecanismo de execução utilizado, conforme coletado dos logs de consultas lentas.
Consumo de recursos
Mostra o uso de recursos durante a execução da consulta a partir dos logs de consultas lentas, incluindo funções de varredura e consumo de CPU.
Outras informações
Mostra metadados adicionais dos logs de consultas lentas, como o endereço IP do cliente.
SQL
Exibe a instrução SQL completa. Use a opção de formatação para uma visualização mais legível ou copie a instrução diretamente.
Detalhes da consulta
Quando a consulta foi executada com parâmetros, esta seção exibe os valores específicos de cada parâmetro. Mescle os parâmetros na instrução SQL conforme necessário.
Plano de execução
Exibe o plano de execução extraído do campo Plan nos logs de consultas lentas.
Os planos de execução são coletados apenas para consultas com tempo de execução superior a 10 s.
Use o recurso de visualização de plano para ver uma representação gráfica do plano. Para informações sobre como interpretar planos de execução, consulte EXPLAIN and EXPLAIN ANALYZE.
Estatísticas
Mostra dados de consumo por operador extraídos do campo Statistics nos logs de consultas lentas, incluindo o número de linhas varridas e o tempo de execução de cada operador. Use esses dados para identificar quais operadores consomem mais recursos.
Informações de tabelas lidas/gravadas
Lista as tabelas lidas ou gravadas pela consulta. Clique em qualquer um dos links para acessar análises adicionais:
Table Metadata: Abre a página Table Metadata para a tabela selecionada. Os metadados de tabela são provenientes da tabela
hg_table_infoe são atualizados no modelo T+1 — tabelas criadas hoje só estarão disponíveis para consulta amanhã.Table Lock Analysis: Abre a página Table Lock Analysis para verificar se a consulta mantém algum bloqueio relacionado a operações de linguagem de manipulação de dados (DML). Útil quando uma consulta com plano fixo fica lenta devido a operações DML concorrentes do mecanismo de execução do Hologres (HQE).
DDL Conflict Analysis
Indica se as tabelas envolvidas na consulta sofreram operações de linguagem de definição de dados (DDL) dentro de um minuto antes ou após o tempo de execução da consulta. Se a consulta falhou com a mensagem de erro Query is canceled, esta seção ajuda a confirme se um conflito de DDL causou a falha.
Mensagens de erro
Se a consulta falhar, os detalhes do erro aparecem aqui. O Query Insight no HoloWeb adiciona automaticamente as causas da falha e sugestões de correção para ajudar na resolução de erros SQL. Para uma referência de falhas SQL comuns, consulte FAQ for Hologres SQL statements.
Table Metadata
Os metadados de tabela são provenientes da tabela do sistema hg_table_info, atualizada uma vez por manhã. Os dados ficam disponíveis no modelo T+1.
Acesse Table Metadata clicando no link Table Metadata na seção Read/Write Table Information de Query Metadata, ou insira diretamente o nome da instância, o banco de dados, o schema e o tempo de coleta de metadados.
A aba exibe as seguintes seções:
Informações básicas: Nome da tabela, se a tabela é particionada e detalhes da partição.
Table Metadata Information: Tempo de criação da tabela, tempo de coleta dos metadados e capacidade de armazenamento.
Table Property Information: Índices definidos na tabela, incluindo a chave primária (PK) e a chave de distribuição.
Table Schema Information: Campos, tipos de campo, possibilidade de nulo e valores padrão.
Visualização de plano
Plan Visualization exibe o campo Plan dos logs de consultas lentas como um plano de execução gráfico.
Os dados de plano são coletados apenas para consultas com tempo de execução superior a 10 s.
Por onde começar: Verifique primeiro a seção Statistics em Query Metadata. Ela mostra contagens de linhas e tempos de execução por operador, permitindo identificar os operadores mais intensivos em recursos antes de explorar o grafo completo do plano.
Para referência sobre conceitos de planos de execução, consulte EXPLAIN and EXPLAIN ANALYZE.
Análise de bloqueio de tabela
Table Lock Analysis verifica se a consulta gerou operações DML (INSERT, atualize ou exclua) no mecanismo de execução do Hologres (HQE). Um bloqueio ocorre quando uma tabela tem consultas de leitura via SDK ou HQE e consultas DML do HQE em execução ao mesmo tempo.
Table Lock Analysis detecta apenas bloqueios relacionados a DML, não bloqueios de DDL.
Havendo contenção de bloqueio, evite execute consultas SDK e operações DML do HQE contra a mesma tabela de forma concorrente.
Solução de problemas
Erro: relation with OID xxx does not exist
Este erro ocorre quando uma tabela envolvida na consulta foi submetida a uma operação TRUNCATE ou DROP, alterando o identificador de objeto (OID) da tabela.
Para investigar: insira o Query ID no Query Insight e verifique a seção DDL Conflict Analysis para confirme se existiam bloqueios de DDL no momento da consulta.

Erro: query is canceled
Este erro ocorre quando as tabelas envolvidas na consulta sofreram operações DDL — como TRUNCATE ou DROP — durante a execução da consulta.
Para investigar: insira o Query ID no Query Insight. Na aba Query Metadata, abra a seção DDL Conflict Analysis para ver as operações DDL na tabela afetada.

Alta latência em instruções SQL via SDK
Se uma instrução SQL via SDK demorar mais do que o esperado, verifique se há contenção de bloqueio.
Para investigar: na seção Read/Write Table Information, clique em Table Lock Analysis.

Se a análise indicar uma instrução DML concorrente do HQE, a operação DML do HQE adquiriu um bloqueio de tabela, fazendo a consulta SDK aguardar. Evite executar ambos os tipos de operação contra a mesma tabela ao mesmo tempo.
Se nenhuma operação DML do HQE for encontrada, a latência não é causada por bloqueios de tabela. Consulte Optimize write and update performance para investigação adicional.
Erro: Dispatch query failed: The shards are incomplete
Este erro indica que um ou mais shards da instância do Hologres entraram em estado inconsistente, geralmente como resultado de um coredump. O problema é causado por um defeito de software em versões anteriores (como a r4.1.10) e não está relacionado a problemas com a contagem de conexões.
Para resolver o problema, faça o upgrade da instância do Hologres para a versão 4.1.12 ou posterior. Recomendamos o upgrade para a versão 4.1.18 ou posterior para maior estabilidade. Para instruções, consulte Upgrade the instance version.