Skip to main content
Star Schema Benchmark (SSB) と同様、TPC-DS は TPC-H をベースにしていますが、これとは対照的なアプローチを取っています。つまり、データを複雑なスノーフレークスキーマ (8 テーブルではなく 24 テーブル) で格納することで、必要な JOIN の数を増やしています。データ分布には偏りがあり (たとえば、正規分布やポアソン分布) 、一様ではありません。また、ランダムな置換を含むレポートクエリおよびアドホッククエリが 99 個含まれています。 参考文献

データ生成とインポート

まず、TPC-DSリポジトリをチェックアウトし、データ生成ツールをコンパイルします。
次に、データを生成します。パラメーター -scale でスケール係数を指定します。
次に、ClickHouse でテーブルを作成します。テーブル定義は、ClickHouse リポジトリの init.sql で確認できます。 データは次のようにインポートできます。
次に、生成されたクエリを実行します。

クエリ

99 個の TPC-DS クエリは、ClickHouse リポジトリのこちらにあります。 SQL 標準に準拠した動作と期待どおりの結果を得るには、settings.json の設定を適用してください。既知の問題や特定のクエリに関する注意事項については、README を参照してください。 正確性 特に断りがない限り、クエリの結果は公式結果と一致します。TPC-DS の仕様で許容されているため、わずかな精度差が生じる場合があります。

パフォーマンスベンチマーク

ClickHouse は、リリースされたすべてのバージョンについて TPC-DS クエリパフォーマンスを追跡しています。ClickHouse versions benchmark ページでは、99 個すべての TPC-DS クエリ (スケール係数 32) の実行時間を確認し、パフォーマンスが時間の経過とともにどのように向上してきたかを確認できます。
最終更新日 2026年8月14日