How to Test Your Hardware with ClickHouse

You can run basic ClickHouse performance test on any server without installation of ClickHouse packages.

Automated Run

You can run benchmark with a single script.

  1. Download the script.
  1. wget https://raw.githubusercontent.com/ClickHouse/ClickHouse/master/benchmark/hardware.sh
  1. Run the script.
  1. chmod a+x ./hardware.sh
  2. ./hardware.sh
  1. Copy the output and send it to [email protected]

All the results are published here: https://clickhouse.com/benchmark/hardware/

Manual Run

Alternatively you can perform benchmark in the following steps.

  1. ssh to the server and download the binary with wget:
  1. # For amd64:
  2. wget https://builds.clickhouse.tech/master/amd64/clickhouse
  3. # For aarch64:
  4. wget https://builds.clickhouse.tech/master/aarch64/clickhouse
  5. # Then do:
  6. chmod a+x clickhouse
  1. Download benchmark files:
  1. wget https://raw.githubusercontent.com/ClickHouse/ClickHouse/master/benchmark/clickhouse/benchmark-new.sh
  2. chmod a+x benchmark-new.sh
  3. wget https://raw.githubusercontent.com/ClickHouse/ClickHouse/master/benchmark/clickhouse/queries.sql
  1. Download test data according to the Yandex.Metrica dataset instruction (“hits” table containing 100 million rows).
  1. wget https://datasets.clickhouse.tech/hits/partitions/hits_100m_obfuscated_v1.tar.xz
  2. tar xvf hits_100m_obfuscated_v1.tar.xz -C .
  3. mv hits_100m_obfuscated_v1/* .
  1. Run the server:
  1. ./clickhouse server
  1. Check the data: ssh to the server in another terminal
  1. ./clickhouse client --query "SELECT count() FROM hits_100m_obfuscated"
  2. 100000000
  1. Run the benchmark:
  1. ./benchmark-new.sh hits_100m_obfuscated
  1. Send the numbers and the info about your hardware configuration to [email protected]

All the results are published here: https://clickhouse.com/benchmark/hardware/