性能测试

    语法:

    如果要发送一组查询,请创建一个文本文件,并将每个查询的字符串放在此文件中。 例如:

    1. clickhouse-benchmark [keys] < queries_file
    • -c N, --concurrency=N — Number of queries that clickhouse-benchmark 同时发送。 默认值:1。
    • -d N, --delay=N — Interval in seconds between intermediate reports (set 0 to disable reports). Default value: 1.
    • -h WORD, --host=WORD — Server host. Default value: localhost. 为 比较模式 您可以使用多个 -h 参数
    • -p N, --port=N — Server port. Default value: 9000. For the 您可以使用多个 -p 钥匙
    • , --randomize — 有多个查询时,以随机顺序执行.
    • -s, --secure — 使用TLS安全连接.
    • -t N, --timelimit=N — Time limit in seconds. clickhouse-benchmark 达到指定的时间限制时停止发送查询。 默认值:0(禁用时间限制)。
    • --confidence=N — Level of confidence for T-test. Possible values: 0 (80%), 1 (90%), 2 (95%), 3 (98%), 4 (99%), 5 (99.5%). Default value: 5. In the 比较模式 clickhouse-benchmark 执行 测试以确定两个分布是否与所选置信水平没有不同。
    • --cumulative — Printing cumulative data instead of data per interval.
    • --database=DATABASE_NAME — ClickHouse database name. Default value: default.
    • --json=FILEPATH — JSON output. When the key is set, clickhouse-benchmark 将报告输出到指定的JSON文件。
    • --user=USERNAME — ClickHouse user name. Default value: default.
    • --password=PSWD — ClickHouse user password. Default value: empty string.
    • — Stack traces output. When the key is set, clickhouse-bencmark 输出异常的堆栈跟踪。
    • --help — Shows the help message.

    如果你想在查询时应用上述的部分参数 设置 ,请将它们作为键传递 --<session setting name>= SETTING_VALUE. 例如, --max_memory_usage=1048576.

    默认情况下, clickhouse-benchmark 按照 --delay 参数间隔输出结果。

    报告示例:

    • 查询数量:参见Queries executed:字段。

    • 状态码(按顺序给出):

      • ClickHouse服务器的连接信息。
      • 已处理的查询数。
      • QPS:服务端每秒处理的查询数量
      • RPS:服务器每秒读取多少行
      • MiB/s:服务器每秒读取多少字节的数据
      • 结果RPS:服务端每秒生成多少行的结果集数据
      • 结果MiB/s.服务端每秒生成多少字节的结果集数据

    clickhouse-benchmark 可以比较两个正在运行的ClickHouse服务器的性能。

    1. $ echo "SELECT * FROM system.numbers LIMIT 10000000 OFFSET 10000000" | clickhouse-benchmark -i 10