メインコンテンツへスキップ
DataStore は、chDB の pandas 互換 API です。使い慣れた pandas DataFrame インターフェイスと SQL クエリ最適化の強みを組み合わせることで、pandas スタイルのコードを記述しながら ClickHouse のパフォーマンスを得られます。

主な機能

  • Pandas互換性: 209個の pandas DataFrame メソッド、56個の .str メソッド、42以上の .dt メソッド
  • SQL 最適化: 操作は自動的に最適化された SQL クエリにコンパイルされます
  • 遅延評価: 結果が必要になるまで操作の実行が保留されます
  • 630以上の API メソッド: データ操作に対応する包括的な API
  • ClickHouse 拡張機能: pandas では利用できない追加のアクセサ (.arr.json.url.ip.geo)

アーキテクチャ

DataStore は、遅延評価デュアルエンジン実行 を採用しています。
  1. 遅延オペレーションチェーン: 操作は記録されますが、すぐには実行されません
  2. スマートなエンジン選択: QueryPlanner が各セグメントを最適なエンジンに振り分けます (SQL には chDB、複雑な処理には Pandas)
  3. 中間キャッシュ: 各ステップの結果をキャッシュすることで、反復的な探索を高速化します
詳しくは 実行モデル を参照してください。

Pandasからのワンライナーでの移行

既存の pandas コードは変更不要でそのまま動作しますが、実行は ClickHouse engine 上で行われます。

パフォーマンス比較

DataStore は pandas と比べて大幅に高速で、特に集約処理や複雑なパイプラインで高い効果を発揮します。 1,000万行でのベンチマークです。詳細は ベンチマークスクリプトPerformance Guide を参照してください。

DataStore を使うべき場合

次のような場合は DataStore を使用してください。
  • 大規模なデータセット (数百万行) を扱う場合
  • 集計や groupby 操作を行う場合
  • ファイル、データベース、またはクラウドストレージのデータをクエリする場合
  • 複雑なデータパイプラインを構築する場合
  • より高いパフォーマンスで pandas API を使いたい場合
次のような場合は raw SQL API を使用してください。
  • SQL を直接書きたい場合
  • クエリの実行を細かく制御する必要がある場合
  • pandas API では提供されていない ClickHouse 固有の機能を使う場合

機能比較

API 統計

はじめに

API リファレンス

高度なトピック

設定とデバッグ

Pandas ユーザーガイド

簡単な使用例

次のステップ

最終更新日 2026年7月3日