chDB
chDB — это быстрый встраиваемый in-process SQL OLAP‑движок на базе ClickHouse версии v25.8.2.1. Вы можете использовать его, когда вам нужны возможности ClickHouse в языке программирования без необходимости подключаться к отдельному серверу ClickHouse.
Ключевые возможности
- Встраиваемый SQL OLAP-движок — на базе ClickHouse, нет необходимости устанавливать сервер ClickHouse
- Поддержка множества форматов данных — ввод и вывод данных в форматах Parquet, CSV, JSON, Arrow, ORC и 70+ других форматов
- Минимизация копирования данных — из C++ в Python с использованием python memoryview
- Глубокая интеграция с экосистемой Python — нативная поддержка Pandas, Arrow, DB API 2.0, органично встраивается в существующие data science‑процессы
- Отсутствие зависимостей — не требуется установка внешних баз данных
- DataStore API — API, совместимый с Pandas, с SQL-оптимизацией, поддерживающий более 630 методов
DataStore: API, совместимый с pandas
НОВИНКА! DataStore предоставляет совместимый с pandas API, который сочетает привычный синтаксис pandas с производительностью ClickHouse.
Однострочная миграция
Основные показатели производительности
| Операция | pandas | DataStore | Прирост скорости |
|---|---|---|---|
| GroupBy count | 347ms | 17ms | 19.93x |
| Сложный пайплайн | 2,047ms | 380ms | 5.39x |
| Filter+Sort+Head | 1,537ms | 350ms | 4.40x |
Результаты бенчмарка на 10M строк
Возможности DataStore
- 630+ методов API — 209 методов pandas DataFrame, 185+ методов аксессоров
- Отложенные вычисления (lazy evaluation) — операции компилируются в оптимизированный SQL
- SQL pushdown — фильтры и агрегаты выполняются на стороне источника данных
- Универсальные источники данных — чтение из файлов, S3, баз данных и озёр данных
Подробнее: Документация DataStore
Какие языки поддерживает chDB?
chDB поддерживает следующие языковые привязки:
С чего начать?
- Если вы используете Go, Rust, NodeJS, Bun или C и C++, ознакомьтесь с соответствующими страницами для этих языков.
- Если вы используете Python, см. руководство для разработчиков по началу работы или самостоятельный онлайн-курс chDB.
Для пользователей pandas
Начните с DataStore API, чтобы получить привычную работу в стиле pandas с производительностью ClickHouse:
- Быстрый старт с DataStore — установка и миграция одной строкой
- Миграция с pandas — пошаговое руководство по миграции
- Сборник рецептов по pandas — распространённые шаблоны использования
- Ключевые отличия — важные отличия от pandas
- Руководство по производительности — рекомендации по оптимизации
Справочник по API DataStore
- Factory Methods - создание из файлов, баз данных и облачных хранилищ
- Query Building - построение запросов в стиле SQL
- Pandas Compatibility - 209 совместимых методов
- Accessors - .str, .dt, .arr, .json, .url, .ip, .geo
- Configuration - движок, логирование, профилирование
- Debugging - explain(), профилирование, логирование
Руководства по SQL API
- Python API Reference - Полная документация по SQL API
- JupySQL
- Запросы к Pandas
- Запросы к Apache Arrow
- Запросы к данным в S3
- Запросы к файлам Parquet
- Запросы к удалённому ClickHouse
- Использование базы данных clickhouse-local
Вводное видео
Посмотрите краткое введение в chDB и узнайте, как он переносит мощь ClickHouse в вашу среду Python:
Показатели производительности
chDB демонстрирует выдающуюся производительность в различных сценариях:
- ClickBench встраиваемых движков — сравнение производительности SQL API
- DataFrame Бенчмарк - Сравнение движков DataFrame
- DataStore vs Pandas — до 20 раз быстрее, чем pandas при типичных операциях

О chDB
- Прочитайте полную историю появления проекта chDB в блоге
- Узнайте о chDB и его вариантах использования в блоге
- Пройдите самостоятельный онлайн-курс по chDB
- Попробуйте chDB прямо в браузере, используя примеры codapi
- Дополнительные примеры см. (https://github.com/chdb-io/chdb/tree/main/examples)
Лицензия
chDB доступна по лицензии Apache версии 2.0. Дополнительные сведения см. в файле LICENSE.