跳转到主要内容

要求

  • Python 3.8+
  • 支持的平台:macOS 和 Linux (x86_64 和 ARM64)

安装

使用

命令行界面

可直接在命令行中运行 SQL 查询:

Python 基础用法

基于连接的 API (推荐)

为了更好地管理资源并提升性能:

数据输入方式

基于文件的数据源

chDB 支持 70 多种数据格式,可直接对文件进行查询:

输出格式示例

DataFrame 操作

旧版 DataFrame API

有状态会话

会话可在多个操作之间保留查询状态,从而支持更复杂的工作流:

高级会话功能

另见:test_stateful.py。

Python DB-API 2.0 接口

与现有 Python 应用程序兼容的标准数据库接口:

Python 用户自定义函数 (UDF)

chDB 支持原生进程内 Python UDF,具有类型化参数、自动类型推断以及可配置的 NULL 和异常处理机制。
有关注册方法、类型系统、NULL 处理、异常处理和日期时间支持的完整说明,请参阅 Python UDF 指南。有关完整的 API 参考文档,请参阅 Python UDF API 参考文档。较早的 @chdb_udf 装饰器仍可使用,但已由此 API 替代——请参阅 旧版 API。

流式查询处理

以恒定的内存占用处理大型数据集:

Python 表引擎

查询 Pandas DataFrame 数据

使用 PyReader 自定义数据源

为特定数据源实现自定义数据读取器:

性能与优化

基准测试

chDB 持续优于其他嵌入式引擎:
  • DataFrame 操作:在分析查询中,速度比传统 DataFrame 库快 2–5 倍
  • Parquet 处理:可与领先的列式引擎媲美
  • 内存效率:内存占用低于替代方案
更多基准测试结果详情

性能建议

GitHub 仓库