Repolode
ClickHouse

ClickHouse/ClickBench

A reproducible benchmark suite for analytical databases, using a web-analytics dataset and 43 standard-SQL queries to compare systems.

Stars
1,157
Forks
331
Open issues
50
Last commit
21 hours ago

What is it?

ClickBench is a benchmark for analytical (OLAP) databases. It runs a fixed set of 43 SQL queries over a single flat table of about 100 million anonymized web analytics records, covering clickstream analysis, ad-hoc analytics and real-time dashboard-style queries. Each system is tested through a shell script that installs the software, loads the data, runs the queries three times each, and records load time, data size and query runtimes.

The project's stated goals are reproducibility on inexpensive cloud VMs, broad coverage of systems from self-managed OLAP engines and OLTP databases to managed and serverless services, and realism through production-derived data distributions. Results are published on a web dashboard where users can filter systems and queries and compute summary scores using geometric-mean ratios. The repository includes the test scripts, the table definitions and query files for each system, and the raw result JSON files.

The benchmark has limitations: it uses a single flat table, mostly runs on single-node setups, and runs queries sequentially rather than under concurrency. The authors note that results should be interpreted with care.

Key features

  • 01Runs 43 standard-SQL queries covering full scans, filtered scans, index lookups and common relational operations.
  • 02Provides an automated shell-script workflow for installing, loading, querying and measuring each system.
  • 03Publishes the dataset in CSV, TSV, JSON Lines and Parquet formats.
  • 04Reports load time, storage size, and cold and hot query runtimes for each system.
  • 05Includes a web dashboard for filtering systems and queries and computing summary scores.
  • 06Covers self-managed, managed, serverless and some NoSQL or time-series databases.

Use cases

  • Comparing candidate analytical databases on a realistic web-analytics style workload before choosing one.
  • Reproducing benchmark results on your own cloud VM to validate performance claims.
  • Adding a new database to the suite to measure its load time, storage size and query speed.
  • Studying how a database's compression, indexing and query execution behave on production-like data.

Quick start

  1. 1

    Browse the published benchmark results on the ClickBench website

  2. 2

    Copy an existing system directory to add a new system or configuration

  3. 3

    Run the benchmark.sh script on a fresh Ubuntu 24.04 or newer VM

  4. 4

    Optionally regenerate index.html from the results

    ./generate-results.sh

Things to know

  • The dataset is a single flat table, which may disadvantage normalized data warehouses.
  • Most published results come from single-node setups, so distributed performance is less covered.
  • Queries run one after another, so concurrency and system capacity are not measured.
  • The project's license is not clearly identified in the metadata.

In collections

Topics

FAQ

What is ClickBench?
A reproducible benchmark suite for analytical databases, using a web-analytics dataset and 43 standard-SQL queries to compare systems. ClickBench is a benchmark for analytical (OLAP) databases. It runs a fixed set of 43 SQL queries over a single flat table of about 100 million anonymized web analytics records, covering clickstream analysis, ad-hoc analytics and real-time dashboard-style queries. Each system is tested through a shell script that installs the software, loads the data, runs the queries three times each, and records load time, data size and query runtimes.
Is ClickBench free to use? What license does it have?
ClickBench is open source under the Other license. Check the license terms before using it in commercial products.
Is ClickBench still maintained?
Actively maintained. The last commit to ClickBench was on Nov 6, 2026.
What can I use ClickBench for?
Comparing candidate analytical databases on a realistic web-analytics style workload before choosing one. Reproducing benchmark results on your own cloud VM to validate performance claims. Adding a new database to the suite to measure its load time, storage size and query speed. Studying how a database's compression, indexing and query execution behave on production-like data.
How do I install ClickBench?
Browse the published benchmark results on the ClickBench website Copy an existing system directory to add a new system or configuration Run the benchmark.sh script on a fresh Ubuntu 24.04 or newer VM Optionally regenerate index.html from the results: ./generate-results.sh
Where can I get ClickBench?
The source code and installation instructions are on GitHub: https://github.com/ClickHouse/ClickBench

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects