chDB —— 快速、可靠、可扩展的进程内数据库
在进程内体验 ClickHouse 的强大能力。为任何数据密集型应用带来无与伦比的性能、可靠性与可扩展性。
- 极速 SQL 引擎
- 支持 80 多种数据格式
- 与 DataFrame 实现零拷贝数据交换
- 原生 Pandas 风格的 Pythonic 接口
chDB 4.0 正式发布
编写 Pandas,运行于 ClickHouse,现已支持 Hex
借助全新的 DataStore API,您可以直接编写已经熟悉的 Pandas 代码,代码将自动在 ClickHouse 引擎上执行。
DataStore 会将您的操作记录为一条惰性管道,在执行时将整条链路编译为优化后的 ClickHouse SQL,并应用过滤下推、列裁剪与 LIMIT 传播等优化。
惰性执行,ClickHouse 级速度
操作只记录、不执行。完整管道会被编译为优化 SQL,并在 ClickHouse 向量化、多线程的引擎上运行。
无缝引擎回退
操作只记录、不执行。完整管道会被编译为优化 SQL,并在 ClickHouse 向量化、多线程的引擎上运行。
一行 import 即可迁移
操作只记录、不执行。完整管道会被编译为优化 SQL,并在 ClickHouse 向量化、多线程的引擎上运行。
在 Hex 中试用 chDB 4.0
在 Hex Notebook 中,无需任何配置即可运行 Pandas 风格的 ClickHouse 查询。
通过 ClickHouse 即可获得延长的免费试用。
chDB 与 ClickHouse 生态
无论是本地开发、在应用中嵌入进程内分析,还是扩展生产工作负载,ClickHouse 都能为您提供支持。
ClickHouse
chDB: ClickHouse In-Process
ClickHouse Local
开源库
chDB 是一个开源库,您可以根据自身需求自由定制并扩展您的数据库。受益于活跃的社区,您可以紧跟最新创新与安全最佳实践。
直接查询对象
借助 chDB,您可以直接在所选编程语言中查询原生对象。这种直接访问减少了延迟、简化了数据处理,带来更快的操作体验。
支持 Python DB API 2.0
chDB 支持 Python DB API 2.0,可与您的 Python 应用无缝集成。借助熟悉的库与工具,享受一致、可靠且易用的体验。
原生兼容 Pandas
编写直接在 ClickHouse 上执行的 Pandas 代码。DataStore API 带来惰性执行、自动查询优化与无缝的引擎回退。
chDB 提供多种编程语言的绑定,包括:
嵌入式运行,无需安装或运行 ClickHouse 服务
- 部署简化,无需额外配置
- 降低系统复杂度与资源占用
- 非常适合轻量级与嵌入式应用
DataFrame 零拷贝交换
- DataFrame 直接读写,无序列化开销
- 数值和定宽列通过 buffer 协议直接与 Pandas 共享内存
输入输出支持 Parquet、CSV、JSON、Arrow、ORC 以及 80 多种格式
- 轻松对接多种数据源
- 简化数据交换与互操作
- 保障与各种数据格式的兼容性
chDB 持续领先 DuckDB、Pandas 与 Polars,现已支持零拷贝 DataFrame 交换
借助 chDB,您可在进程内享受 ClickHouse 的极速性能。
247x
快于 Pandas
在 100 万行 DataFrame 上执行 COUNT(*) 聚合
~24%
快于 DuckDB
将 100 万行数据导出至 Pandas DataFrame(2.64 秒 vs 3.47 秒)
87x
快于 chDB v1
端到端 DataFrame 查询,v2+ 零拷贝输入
在 100 万与 1000 万行规模上,围绕 14 种常用 Pandas 操作进行的对比测试中,chDB 在大多数项上保持领先。查看完整基准测试结果。
- 01在 CI 中测试您的查询,无需启动 ClickHouse 服务
- 02构建自包含的原型 / PoC
- 03在没有运行 ClickHouse 服务的 Jupyter Notebook 中使用
几分钟即可开始使用 chDB
在 macOS 与 Linux 上安装 chDB
pip install chdbquery = "select count() FROM s3('s3://datasets-documentation/hackernews/hacknernews.json.gz')"
chdb.query(query, 'DataFrame')在寻找托管方案?
立即开始使用 ClickHouse Cloud
30 天免费试用,加上 300 美元额度,助您自如开启探索。