Consultas úteis para troubleshooting
Sem nenhuma ordem específica, aqui estão algumas consultas úteis para solucionar problemas no ClickHouse e entender o que está acontecendo.
Também temos um ótimo post no blog com algumas consultas essenciais para monitorar o ClickHouse.
Veja quais configurações foram alteradas em relação ao valor padrão
Verifique o tamanho de todas as suas tabelas
A resposta é assim:
Número de linhas e tamanho médio diário da sua tabela
Percentual de compressão das colunas, bem como o tamanho do índice primário em memória
Você pode ver o nível de compressão dos seus dados por coluna. Esta consulta também retorna o tamanho dos seus índices primários em memória — algo útil de saber, porque os índices primários precisam caber na memória.
Número de consultas enviadas pelo cliente nos últimos 10 minutos
Você pode aumentar ou diminuir o intervalo de tempo na função toIntervalMinute(10):
Número de partes em cada partição
Encontrar consultas de longa duração
Isso pode ajudar a encontrar consultas travadas:
Usando o Query id da consulta com pior desempenho, podemos obter um stack trace que pode ajudar na depuração.
Veja os erros mais recentes
A resposta é assim:
As 10 consultas que mais usam CPU e memória
Quanto espaço em disco minhas projeções usam
Mostrar o armazenamento em disco, o número de partes, o número de linhas em system.parts e de marcas nos bancos de dados
Liste os detalhes das novas partes gravadas recentemente
Os detalhes incluem quando elas foram criadas, qual é o tamanho delas, quantas linhas elas têm e mais:
Consultas de monitoramento em todo o cluster
As consultas a seguir são úteis para monitorar clusters do ClickHouse. Elas usam clusterAllReplicas() para agregar dados de todos os nós.
Estas consultas presumem que o nome do seu cluster é default. Se o cluster tiver um nome diferente, substitua 'default' e default pelo nome real do cluster.
Média de novas partes criadas por minuto e por segundo (na última hora)
Substitua 'your_table' pelo nome da tabela que você quer monitorar.
Esta consulta mostra as mesclagens em execução no momento no cluster, com tempo estimado para conclusão:
Consultas mais frequentes por hash normalizado
Encontre as consultas executadas com maior frequência (útil para identificar quais delas otimizar):
Contagem de erros por tipo de evento e data
Analise os erros na criação de partes em todo o cluster:
Verifique como as tabelas se distribuem pelos nós do cluster:
Verifique operações de async insert
Monitore a atividade de async insert:
Análise de partes e mesclagem
Partes ativas atualmente por tabela
Veja o número de partes ativas por tabela em todo o cluster:
Encontre partições que possam ter excesso de partes (o que pode afetar o desempenho da consulta):
Verifique se há partes desanexadas que precisem ser investigadas:
Uso de memória do cluster por nó
Monitore o consumo de memória em todos os nós:
Executar consultas no cluster
Confira quais consultas estão em execução no momento:
Configurações modificadas em relação aos valores padrão
Veja quais configurações foram alteradas em relação aos valores padrão:
Status da fila de replicação
Para tabelas replicadas, verifique a fila de replicação: