Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

configurações de sessão max_execution_*

Essas configurações estão disponíveis em system.settings e são geradas automaticamente a partir do código-fonte.

max_execution_speed

Tipo
UInt64
Padrão
0

O número máximo de linhas executadas por segundo. Verificado em cada bloco de dados quando timeout_before_checking_execution_speed expira. Se a velocidade de execução estiver alta, ela será reduzida.

max_execution_speed_bytes

Tipo
UInt64
Padrão
0

O número máximo de bytes processados por segundo. Verificado em cada bloco de dados quando timeout_before_checking_execution_speed expira. Se a velocidade de execução estiver alta, ela será reduzida.

max_execution_time

Tipo
Seconds
Padrão
0

O tempo máximo de execução da consulta, em segundos.

O parâmetro max_execution_time pode ser um pouco difícil de entender. Ele funciona com base em uma interpolação relativa à velocidade atual de execução da consulta (esse comportamento é controlado por timeout_before_checking_execution_speed).

O ClickHouse interromperá uma consulta se o tempo total de execução estimado exceder o max_execution_time especificado. Por padrão, timeout_before_checking_execution_speed é definido como 10 segundos. Isso significa que, após 10 segundos de execução da consulta, o ClickHouse começará a estimar o tempo total de execução. Se, por exemplo, max_execution_time for definido como 3600 segundos (1 hora), o ClickHouse encerrará a consulta se o tempo estimado ultrapassar esse limite de 3600 segundos. Se você definir timeout_before_checking_execution_speed como 0, o ClickHouse usará o tempo decorrido como base para max_execution_time.

Se o tempo de execução da consulta exceder o número especificado de segundos, o comportamento será determinado por 'timeout_overflow_mode', que, por padrão, é definido como throw.

max_execution_time_leaf

Tipo
Seconds
Padrão
0

Semelhante em significado a max_execution_time, mas aplicado apenas a nós folha em consultas distribuídas ou remotas.

Por exemplo, se quisermos limitar o tempo de execução em um nó folha a 10s, mas não houver limite no nó inicial, em vez de definir max_execution_time nas configurações da subconsulta aninhada:

SELECT count()
FROM cluster(cluster, view(SELECT * FROM t SETTINGS max_execution_time = 10));

Podemos usar max_execution_time_leaf nas configurações da consulta:

SELECT count()
FROM cluster(cluster, view(SELECT * FROM t)) SETTINGS max_execution_time_leaf = 10;
Navigation