Greenplumの後継として、新しいPostgreSQLカーネルを基盤に構築された、データウェアハウスと大規模分析向けのオープンソースMPPデータベース。
ClickHouse/ClickBench
Web分析データセットと43個の標準SQLクエリを使い、分析データベースを比較できる再現性の高いベンチマークスイート。
- スター
- 1,155
- フォーク
- 331
- 未解決の Issue
- 50
- 最終コミット
- 昨日
これは何?
ClickBenchは、分析(OLAP)データベース向けのベンチマークです。約1億件の匿名化されたWeb分析レコードを格納した単一のフラットテーブルに対し、43個の固定SQLクエリを実行します。クリックストリーム分析、アドホック分析、リアルタイムダッシュボード形式のクエリをカバーしています。各システムは、ソフトウェアのインストール、データの読み込み、各クエリを3回ずつ実行し、読み込み時間、データサイズ、クエリ実行時間を記録するシェルスクリプトでテストします。
このプロジェクトが掲げる目標は、低価格なクラウドVMで再現できること、セルフマネージド型OLAPエンジンやOLTPデータベースから、マネージドサービスやサーバーレスサービスまで幅広いシステムを対象にすること、そして本番環境由来のデータ分布によって現実的な評価を行うことです。結果はWebダッシュボードで公開されており、システムやクエリを絞り込んだり、幾何平均比を使って総合スコアを計算したりできます。リポジトリにはテストスクリプト、各システム向けのテーブル定義とクエリファイル、生の結果を記録したJSONファイルが含まれています。
このベンチマークには制約があります。単一のフラットテーブルを使用し、ほとんどの場合は単一ノード構成で実行するほか、クエリは並行実行せず逐次実行します。作者は、結果の解釈には注意が必要だと述べています。
主な機能
- 01全件スキャン、条件付きスキャン、インデックス検索、一般的なリレーショナル演算を網羅する43個の標準SQLクエリを実行します。
- 02各システムのインストール、データ読み込み、クエリ実行、計測を自動化するシェルスクリプトのワークフローを提供します。
- 03データセットをCSV、TSV、JSON Lines、Parquet形式で公開しています。
- 04各システムの読み込み時間、ストレージサイズ、コールド時とホット時のクエリ実行時間を報告します。
- 05システムやクエリの絞り込みと総合スコアの計算ができるWebダッシュボードを備えています。
- 06セルフマネージド、マネージド、サーバーレスの各種データベースに加え、一部のNoSQLデータベースや時系列データベースも対象としています。
ユースケース
- 現実的なWeb分析形式のワークロードで候補となる分析データベースを比較し、選定する。
- 自分のクラウドVMでベンチマーク結果を再現し、パフォーマンスに関する主張を検証する。
- スイートに新しいデータベースを追加し、読み込み時間、ストレージサイズ、クエリ速度を測定する。
- 本番環境に近いデータを使って、データベースの圧縮、インデックス、クエリ実行の挙動を調べる。
クイックスタート
- 1
ClickBenchのウェブサイトで公開済みのベンチマーク結果を確認します
- 2
既存のシステムディレクトリをコピーして、新しいシステムまたは設定を追加します
- 3
新規インストールしたUbuntu 24.04以降のVMでbenchmark.shスクリプトを実行します
- 4
必要に応じて、結果からindex.htmlを再生成します
./generate-results.sh
使う前に知っておきたいこと
- データセットは単一のフラットテーブルで構成されているため、正規化されたデータウェアハウスには不利になる場合があります。
- 公開済みの結果の大半は単一ノード構成によるもので、分散処理の性能は十分に評価されていません。
- クエリは順番に実行されるため、同時実行性能やシステム容量は測定されません。
- メタデータでは、プロジェクトのライセンスが明確に特定されていません。
収録されている特集
トピック
よくある質問
- ClickBench とは?
- Web分析データセットと43個の標準SQLクエリを使い、分析データベースを比較できる再現性の高いベンチマークスイート。 ClickBenchは、分析(OLAP)データベース向けのベンチマークです。約1億件の匿名化されたWeb分析レコードを格納した単一のフラットテーブルに対し、43個の固定SQLクエリを実行します。クリックストリーム分析、アドホック分析、リアルタイムダッシュボード形式のクエリをカバーしています。各システムは、ソフトウェアのインストール、データの読み込み、各クエリを3回ずつ実行し、読み込み時間、データサイズ、クエリ実行時間を記録するシェルスクリプトでテストします。
- ClickBench は無料で使えますか?ライセンスは?
- ClickBench は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- ClickBench は今もメンテナンスされていますか?
- 活発にメンテナンス中。ClickBench の最終コミットは 2026年11月5日 です。
- ClickBench は何に使えますか?
- 現実的なWeb分析形式のワークロードで候補となる分析データベースを比較し、選定する。 自分のクラウドVMでベンチマーク結果を再現し、パフォーマンスに関する主張を検証する。 スイートに新しいデータベースを追加し、読み込み時間、ストレージサイズ、クエリ速度を測定する。 本番環境に近いデータを使って、データベースの圧縮、インデックス、クエリ実行の挙動を調べる。
- ClickBench のインストール方法は?
- ClickBenchのウェブサイトで公開済みのベンチマーク結果を確認します 既存のシステムディレクトリをコピーして、新しいシステムまたは設定を追加します 新規インストールしたUbuntu 24.04以降のVMでbenchmark.shスクリプトを実行します 必要に応じて、結果からindex.htmlを再生成します: ./generate-results.sh
- ClickBench はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/ClickHouse/ClickBench
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
DuckDBは、別途サーバーを管理することなく、アプリケーション内で動作するインプロセス型の分析用SQLデータベースです。
リアルタイムで分析レポートを生成する、オープンソースのカラム指向データベース管理システム。
MySQLプロトコルに対応し、データレイクハウスと独自ストレージ上のデータをサブ秒で分析できるオープンソースMPPクエリエンジン。
大量のデータをほぼリアルタイムで保存・分析する、PostgreSQL互換のLuceneベース分散SQLデータベース。
イベントデータを収集し、データウェアハウスやSaaSツールにルーティングする、セルフホスト可能なオープンソースのSegment代替プラットフォーム。