clickhouse-benchmark:
Opções de linha de comando
--query=QUERY— Consulta a ser executada. Se esse parâmetro não for informado, oclickhouse-benchmarklerá as consultas da entrada padrão.--query_id=ID— ID da consulta.--query_id_prefix=ID_PREFIX— Prefixo do ID da consulta.--queries-format=FORMAT— Formato das consultas lidas da entrada padrão. Valores possíveis:tsv(padrão, uma consulta com tabulação escapada por linha) escript(analisa a entrada como um script com várias consultas separadas por ponto e vírgula). Limitação descript: consultasINSERT ... FORMATdevem estar em uma única linha.-c N,--concurrency=N— Número de consultas que oclickhouse-benchmarkenvia simultaneamente. Valor padrão: 1.-C N,--max_concurrency=N— Aumenta gradualmente o número de consultas paralelas até o valor especificado, gerando um relatório para cada nível de concorrência.--precise— Habilita relatórios precisos por intervalo com métricas ponderadas.-d N,--delay=N— Intervalo, em segundos, entre relatórios intermediários (para desativar os relatórios, defina 0). Valor padrão: 1.-h HOST,--host=HOST— Host do servidor. Valor padrão:localhost. No modo de comparação, você pode usar várias chaves-h.-i N,--iterations=N— Número total de consultas. Valor padrão: 0 (repetir indefinidamente).-r,--randomize— Executa as consultas em ordem aleatória se houver mais de uma consulta de entrada.-s,--secure— Usa conexãoTLS.-t N,--timelimit=N— Limite de tempo em segundos. Oclickhouse-benchmarkpara de enviar consultas quando o limite de tempo especificado é atingido. Valor padrão: 0 (limite de tempo desativado).--port=N— Porta do servidor. Valor padrão: 9000. No modo de comparação, você pode usar várias chaves--port.--confidence=N— Nível de confiança para o teste t. Valores possíveis: 0 (80%), 1 (90%), 2 (95%), 3 (98%), 4 (99%), 5 (99,5%). Valor padrão: 5. No modo de comparação, oclickhouse-benchmarkexecuta o teste t de Student para duas amostras independentes para determinar se as duas distribuições não diferem no nível de confiança selecionado.--cumulative— Exibe dados cumulativos em vez de dados por intervalo.--database=DATABASE_NAME— nome do banco de dados do ClickHouse. Valor padrão:default.--user=USERNAME— Nome de usuário do ClickHouse. Valor padrão:default.--password=PSWD— Senha do usuário do ClickHouse. Valor padrão: string vazia.--stacktrace— Saída de stack traces. Quando essa chave é definida, oclickhouse-benchmarkexibe os stack traces das exceções.--stage=WORD— Estágio do processamento da consulta no servidor. O ClickHouse interrompe o processamento da consulta e retorna uma resposta aoclickhouse-benchmarkno estágio especificado. Valores possíveis:complete,fetch_columns,with_mergeable_state. Valor padrão:complete.--roundrobin— Em vez de comparar consultas entre diferentes--host/--port, escolhe aleatoriamente um--host/--portpara cada consulta e a envia para ele.--reconnect=N— Controla o comportamento de reconexão. Valores possíveis: 0 (nunca reconectar), 1 (reconectar a cada consulta) ou N (reconectar após cada N consultas). Valor padrão: 0.--max-consecutive-errors=N— Número de erros consecutivos permitidos. Valor padrão: 0.--ignore-error,--continue_on_errors— Continua o teste mesmo que as consultas falhem.--client-side-time— Exibe o tempo incluindo a comunicação de rede em vez do tempo no servidor; observe que, para versões do servidor anteriores à 22.8, sempre exibimos o tempo do cliente.--proto-caps— Habilita/desabilita o uso de chunks na transferência de dados. Opções (podem ser separadas por vírgula):chunked_optional,notchunked,notchunked_optional,send_chunked,send_chunked_optional,send_notchunked,send_notchunked_optional,recv_chunked,recv_chunked_optional,recv_notchunked,recv_notchunked_optional. Valor padrão:notchunked.--help— Mostra a mensagem de ajuda.--verbose— Aumenta a verbosidade da mensagem de ajuda.
--<session setting name>= SETTING_VALUE. Por exemplo, --max_memory_usage=1048576.
Opções de variáveis de ambiente
CLICKHOUSE_USER, CLICKHOUSE_PASSWORD e CLICKHOUSE_HOST.
Os argumentos de linha de comando --user, --password ou --host têm prioridade sobre as variáveis de ambiente.
Saída
clickhouse-benchmark apresenta um relatório a cada intervalo de --delay.
Exemplo de relatório:
-
Número de consultas no campo
Queries executed:. -
String de status contendo (nesta ordem):
- Endpoint do servidor ClickHouse.
- Número de consultas processadas.
- QPS: Quantas consultas o servidor executou por segundo durante um período especificado no argumento
--delay. - RPS: Quantas linhas o servidor lê por segundo durante um período especificado no argumento
--delay. - MiB/s: Quantos mebibytes o servidor lê por segundo durante um período especificado no argumento
--delay. - result RPS: Quantas linhas o servidor adicionou ao resultado de uma consulta por segundo durante um período especificado no argumento
--delay. - result MiB/s. Quantos mebibytes o servidor adicionou ao resultado de uma consulta por segundo durante um período especificado no argumento
--delay.
- Percentis do tempo de execução das consultas.
Modo de comparação
clickhouse-benchmark pode comparar o desempenho de dois servidores ClickHouse em execução.
Para usar o modo de comparação, especifique os endpoints de ambos os servidores usando dois pares de opções --host e --port. As opções são associadas pela posição na lista de argumentos; o primeiro --host é associado ao primeiro --port e assim por diante. O clickhouse-benchmark estabelece conexões com ambos os servidores e, em seguida, envia consultas. Cada consulta é direcionada a um servidor selecionado aleatoriamente. Os resultados são exibidos em uma tabela.