Skip to main content
Essas configurações estão disponíveis em system.settings e são geradas automaticamente a partir da fonte.

group_by_overflow_mode

Define o que acontece quando o número de chaves únicas para agregação excede o limite:
  • throw: gera uma exceção
  • break: interrompe a execução da consulta e retorna o resultado parcial
  • any: continua a agregação para as chaves que entraram no conjunto, mas não adiciona novas chaves ao conjunto.
Usar o valor any permite executar uma aproximação de GROUP BY. A qualidade dessa aproximação depende da natureza estatística dos dados.

group_by_top_k_optimization_observation_rows

Para enable_group_by_top_k_optimization: o número de linhas que cada fluxo de agregação observa antes de congelar um heap top-K cheio que ignorou menos de 10% das linhas de entrada e removeu menos chaves do que sua capacidade. Um heap congelado significa que a agregação continua como se a otimização estivesse desabilitada. A janela efetiva é de pelo menos o dobro do tamanho reservado do heap, para que ele sempre tenha a chance de ser preenchido antes de ser avaliado. 0 desabilita esse congelamento (o heap ainda é congelado quando um conjunto de empates na fronteira cresce além da sua capacidade). Isso não tem efeito em consultas GROUP BY keys LIMIT K sem ORDER BY, nas quais o congelamento está sempre desabilitado: o plano desse formato contém uma ordenação gerada automaticamente que só compensa enquanto o heap limita a tabela hash; portanto, congelar o heap deixaria o plano mais lento do que o plano sem otimização.

group_by_two_level_threshold

Número de chaves a partir do qual uma agregação em dois níveis é iniciada. 0 - o limiar não está definido.

group_by_two_level_threshold_bytes

A partir de qual tamanho, em bytes, do estado de agregação, passa-se a usar a agregação em dois níveis. 0 - o limiar não está definido. A agregação em dois níveis é usada quando pelo menos um dos limiares é atingido.

group_by_use_nulls

Altera a forma como a cláusula GROUP BY trata os tipos das chaves de agregação. Quando os especificadores ROLLUP, CUBE ou GROUPING SETS são usados, algumas chaves de agregação podem não ser usadas na produção de determinadas linhas de resultado. As colunas dessas chaves são preenchidas com o valor padrão ou com NULL nas linhas correspondentes, dependendo dessa configuração. Valores possíveis:
  • 0 — O valor padrão do tipo da chave de agregação é usado para preencher valores ausentes.
  • 1 — O ClickHouse executa GROUP BY da mesma forma que o padrão SQL define. Os tipos das chaves de agregação são convertidos para Nullable. As colunas das chaves de agregação correspondentes são preenchidas com NULL nas linhas em que elas não foram usadas.
Veja também:
Última modificação em 26 de agosto de 2026