主要特性
- 进程内 SQL OLAP 引擎 - 由 ClickHouse 提供支持,无需安装 ClickHouse 服务器
- 多种数据格式 - 支持 Parquet、CSV、JSON、Arrow、ORC 等输入与输出,以及另外 70 多种格式
- 尽量减少数据拷贝 - 借助 python memoryview 实现从 C++ 到 Python 的高效传递
- 丰富的 Python 生态集成 - 原生支持 Pandas、Arrow、DB API 2.0,可无缝融入现有数据科学工作流
- 零依赖 - 无需安装外部数据库
- DataStore API - 提供兼容 Pandas 的 API,并具备 SQL 优化能力,支持 630+ 个方法
DataStore:兼容 Pandas 的 API
一行代码迁移
性能亮点
| 操作 | pandas | DataStore | 加速比 |
|---|---|---|---|
| GroupBy 计数 | 347ms | 17ms | 19.93x |
| 复杂管道 | 2,047ms | 380ms | 5.39x |
| Filter+Sort+Head | 1,537ms | 350ms | 4.40x |
DataStore 功能
- 630+ 个 API 方法 - 209 个 pandas DataFrame 方法,185+ 个 accessor 方法
- 惰性求值 - 操作会编译为优化后的 SQL
- SQL 下推 - 过滤器和聚合会在数据源端执行
- 通用数据源 - 可从文件、S3、数据库和数据湖读取
chDB 支持哪些语言?
如何开始?
面向 pandas 用户
- DataStore 快速入门 - 安装与一行迁移
- 从 pandas 迁移 - 分步迁移指南
- Pandas Cookbook - 常见用法
- 关键差异 - 与 pandas 的重要区别
- 性能指南 - 优化提示
DataStore API 参考文档
- 工厂方法 - 从文件、数据库和云存储创建
- 查询构建 - SQL 风格的操作
- Pandas 兼容性 - 209 个兼容方法
- Accessors - .str, .dt, .arr, .json, .url, .ip, .geo
- 配置 - 引擎、日志、性能分析
- 调试 - explain()、性能分析、日志
SQL API 指南
- Python API 参考文档 - 完整的 SQL API 文档
- JupySQL
- 查询 Pandas 数据
- 查询 Apache Arrow 数据
- 查询 S3 中的数据
- 查询 Parquet 文件
- 查询远程 ClickHouse
- 使用 clickhouse-local 数据库
介绍视频
性能基准测试
- 嵌入式引擎的 ClickBench - SQL API 性能对比
- DataFrame Benchmark - DataFrame 引擎对比
- DataStore 对比 Pandas - 常见操作下,速度最高可达 pandas 的 20 倍
关于 chDB
- 在 blog 上阅读 chDB 项目诞生的完整故事
- 在 Blog 上了解 chDB 及其应用场景
- 参加 chDB 点播课程
- 通过 codapi 示例 在浏览器中体验 chDB
- 更多示例请参见 (https://github.com/chdb-io/chdb/tree/main/examples)