← All open source projects

ClickHouse

ClickHouse/ClickHouse

ClickHouse is a column-oriented analytical DBMS for fast queries over large event and tabular datasets.

Forks 8,500
Author ClickHouse
Language C++
License Apache-2.0
Synced 2026-06-10

What it is

ClickHouse is a column-oriented analytical DBMS for fast queries over large datasets. It is often used for logs, events, metrics, product analytics, financial data, and any workload where many rows need to be aggregated quickly.

The repository opened in 2016. The project grew from a practical need: a database that stores columns efficiently, compresses data, parallelizes queries, and answers analytical questions faster than row-oriented systems in those scenarios.

What is inside the repository

Inside are the C++ database core, SQL engine, table engines, distributed execution, compression, input/output formats, tests, documentation, and build tools. ClickHouse can run locally, in a cluster, or through the cloud service maintained by the project team.

Minimal analytical query

This example shows a common scenario: events are written to a table, then aggregated quickly by day and event type.

Language: Plain text
CREATE TABLE events (
  ts DateTime,
  name String,
  user_id UInt64
) ENGINE = MergeTree ORDER BY ts;

SELECT toDate(ts) AS day, name, count()
FROM events
GROUP BY day, name
ORDER BY day DESC;

Where it is useful

ClickHouse is useful where there is a lot of append-only data and fast reporting is needed: product metrics, observability, ad analytics, fintech aggregation, behavioral events, and telemetry. It often sits next to Kafka, object storage, BI tools, and internal dashboards.

Strengths and limits

The strength of ClickHouse is analytical speed and maturity around large data. The limits come from the usage model: it is not a universal OLTP database for frequent point updates and complex transactions. It should be designed around analytical patterns, with careful choices around ORDER BY, partitioning, and storage policy.