chDB - fast, reliable, and scalable in-process database

Experience the power of ClickHouse, in-process. With unparalleled performance, reliability, and scalability for any data-intensive application.
Blazing fast SQL engine
Supports 80+ data formats
Zero-copy data exchange with DataFrames
Native Pandas-like pythonic interface
Hex

Announcing chDB 4.0

Write Pandas, run ClickHouse, now on Hex

With the new DataStore API, write the Pandas code you already know, and it executes on the ClickHouse engine automatically.

DataStore records your operations as a lazy pipeline, compiles the full chain into optimized ClickHouse SQL at execution time, and applies filter pushdown, column pruning, and limit propagation.

One import change

Lazy execution, ClickHouse speed

Operations are recorded, not executed. The full pipeline is compiled into optimized SQL and run on ClickHouse's vectorized, multi-threaded engine.

Seamless engine fallback

Operations are recorded, not executed. The full pipeline is compiled into optimized SQL and run on ClickHouse's vectorized, multi-threaded engine.

One import migration

Operations are recorded, not executed. The full pipeline is compiled into optimized SQL and run on ClickHouse's vectorized, multi-threaded engine.

Try chDB 4.0 on Hex

Run Pandas-style ClickHouse queries in Hex notebooks with zero setup.

Get an extended free trial through ClickHouse.

Learn how to use chDB on Hex

chDB and the ClickHouse ecosystem

Whether you're developing locally, running in-process analytics embedded in your app, or scaling production workloads, ClickHouse has you covered.
ClickHouse
chDB: ClickHouse In-Process
ClickHouse Local
book

Open-source library

chDB is an open-source library, allowing you to customize and extend your database to fit your needs. Benefit from a vibrant community that keeps you updated with the latest innovations and security practices.

list-search

Query objects directly

With chDB, you can query native objects in the programming language of choice directly. This direct access reduces latency and simplifies data processing, enabling faster operations.

file-py

Supports Python DB API 2.0

chDB supports Python DB API 2.0, ensuring seamless integration with your Python applications. Enjoy consistency, reliability, and ease of use with familiar libraries and tools.

Pandas

Pandas-native

Write Pandas code that executes on ClickHouse. The DataStore API brings lazy execution, automatic query optimization, and seamless engine fallback.

chDB supports bindings for many programming languages, including:
BunnodeRustGOPython

Embedded. No need to install or run ClickHouse services

Streamline deployment with no additional setup
Reduce system complexity and resource usage
Ideal for lightweight and embedded applications
Embedded

Zero-copy DataFrame exchange

DataFrames are read and written directly with no serialization cost
Numeric and fixed-width columns share memory buffers directly with Pandas via the buffer protocol.
Minimized Copying

Input and output support
Parquet, CSV, JSON, Arrow,
ORC and 80+ more formats

Easily integrate with diverse data sources
Simplify data interchange and interoperability
Ensure compatibility with a wide range of data formats
Input Output

chDB regularly outperforms DuckDB, Pandas, and Polars, now with zero-copy DataFrame exchange

With chDB, you have the benefit of ClickHouse's blazing speed, in-process.

247x

Faster than Pandas

COUNT(*) aggregation on 1M row DataFrame

ChDB vs Pandas

~24%

Faster than DuckDB

Exporting 1M rows to Pandas DataFrame (2.64s vs 3.47s)

ChDB vs DuckDB

87x

Faster than chDB v1

End-to-end DataFrame query, v2+ zero-copy input

chDB vs chDB

In head-to-head benchmarks across 14 common Pandas operations at 1M and 10M rows, chDB leads in the majority of challenges. See full benchmark results.

FAQ Icon

What is chDB used for?

Wherever you need us, we’re there. We love to engage in thoughtful conversation with the ClickHouse community and are always on-hand to answer your questions.
Ask us anything
01Testing your queries in CI without having to spin up a CH server
02Building self-contained prototypes/PoCs
03Jupyter notebooks without a CH Server running

Start using chDB in minutes

Install chDB for macOS and Linux
pip install chdb
query = "select count() FROM s3('s3://datasets-documentation/hackernews/hacknernews.json.gz')"
chdb.query(query,'DataFrame')
Sample Query

Looking for a hosted solution?
Get started with ClickHouse Cloud

30 day free trial and $300 in credits to spend at your own pace.