Cotas no ClickHouse CloudAs cotas são compatíveis com o ClickHouse Cloud, mas devem ser criadas usando a sintaxe DDL. A abordagem de configuração em XML documentada abaixo não tem suporte.
- Impõem restrições a um conjunto de consultas que podem ser executadas ao longo de um período, em vez de limitar uma única consulta.
- Contabilizam os recursos consumidos em todos os servidores remotos no processamento de consultas distribuídas.
queries – O número total de requisições.
query_selects – O número total de requisições SELECT.
query_inserts – O número total de requisições INSERT.
errors – O número de consultas que geraram uma exceção.
result_rows – O número total de linhas retornadas como resultado.
result_bytes - O tamanho total das linhas retornadas como resultado.
read_rows – O número total de linhas de origem lidas das tabelas para executar a consulta em todos os servidores remotos.
read_bytes - O tamanho total lido das tabelas para executar a consulta em todos os servidores remotos.
written_bytes - O tamanho total de uma operação de gravação.
execution_time – O tempo total de execução da consulta, em segundos (wall time).
failed_sequential_authentications - O número total de falhas consecutivas de autenticação.
queries_per_normalized_hash – O número máximo de execuções de uma mesma consulta normalizada. Consultas normalizadas são consultas com literais substituídos por placeholders, portanto SELECT 1 e SELECT 2 são consideradas a mesma consulta normalizada. Esse limite é acompanhado de forma independente para cada padrão distinto de consulta normalizada.
Se o limite for excedido em pelo menos um intervalo de tempo, uma exceção será lançada com um texto informando qual restrição foi excedida, para qual intervalo e quando o novo intervalo começa (ou seja, quando as consultas podem ser enviadas novamente).
As QUOTAs podem usar o recurso “QUOTA key” para contabilizar recursos de várias chaves de forma independente. Veja um exemplo:
<keyed_by_normalized_query_hash />:
SELECT number FROM numbers(1) e SELECT number FROM numbers(2) compartilham o mesmo bucket (porque têm a mesma forma normalizada), mas SELECT number, number FROM numbers(1) usa um bucket separado.
A QUOTA é atribuída aos usuários na seção ‘users’ da configuração. Consulte a seção “Direitos de acesso”.
No processamento distribuído de consultas, os valores acumulados são armazenados no servidor que faz a solicitação. Portanto, se o usuário acessar outro servidor, a QUOTA nele vai “recomeçar”.
Quando o servidor é reiniciado, as QUOTAs são redefinidas.