跳转到主内容
跳转到主内容

chDB

chDB 是一个由 ClickHouse v25.8.2.1 驱动的高性能进程内 SQL OLAP 引擎。 当你希望在某种编程语言环境中使用 ClickHouse 的强大功能,而无需连接到 ClickHouse 服务器时,就可以使用它。

关键特性

  • 进程内 SQL OLAP 引擎 - 由 ClickHouse 提供支持,无需安装 ClickHouse 服务器
  • 多种数据格式 - 输入与输出支持 Parquet、CSV、JSON、Arrow、ORC 和 70 多种其他格式
  • 最小化数据复制 - 通过 python memoryview 在 C++ 与 Python 之间高效传递数据
  • 丰富的 Python 生态集成 - 原生支持 Pandas、Arrow、DB API 2.0,可无缝融入现有数据科学工作流
  • 零依赖 - 无需安装外部数据库
  • DataStore API - 具备 SQL 优化的 Pandas 兼容 API,支持 630+ 个方法

DataStore:pandas 兼容 API

新功能! DataStore 提供了一个与 pandas 兼容的 API,将熟悉的 pandas 语法与 ClickHouse 的高性能相结合。

一行代码迁移

# Just change your import - your pandas code works unchanged
- import pandas as pd
+ from chdb import datastore as pd

df = pd.read_csv("data.csv")
result = df[df['age'] > 25].groupby('city')['salary'].mean()

性能亮点

操作pandasDataStore提速倍数
GroupBy 计数347ms17ms19.93x
复杂处理流水线2,047ms380ms5.39x
Filter+Sort+Head1,537ms350ms4.40x

基于 1000 万行数据的基准测试

DataStore 功能

  • 630+ 个 API 方法 - 209 个 pandas DataFrame 方法,185+ 个 accessor 方法
  • 惰性求值 - 操作会被编译为优化后的 SQL
  • SQL 下推 - 筛选和聚合直接在数据源上执行
  • 广泛的数据源支持 - 从文件、S3、数据库、数据湖中读取

了解更多:DataStore 文档

chDB 支持哪些语言?

chDB 提供以下语言绑定:

如何开始?

面向 pandas 用户

从 DataStore API 入手,以获得熟悉的 pandas 使用体验,同时发挥 ClickHouse 的性能优势:

DataStore API 参考

SQL API 指南

入门视频

观看一个关于 chDB 的简短介绍视频,了解如何在 Python 环境中发挥 ClickHouse 的强大能力:

性能基准测试

chDB 在不同场景下均具备卓越性能:

DataFrame 基准测试结果

关于 chDB

许可证

chDB 以 Apache License 2.0 版发布。有关更多信息,请参阅 LICENSE