跳到主要内容
跳到主要内容

什么是 ClickHouse?

ClickHouse® は、高性能な列指向 SQL データベース管理システム (DBMS) であり、オンライン分析処理 (OLAP) に向けて設計されています。これは、オープンソースソフトウェア としても、クラウド提供 としても利用可能です。

分析とは何か?

分析、または OLAP (オンライン分析処理) は、大規模なデータセットに対して複雑な計算 (例:集計、文字列処理、算術) を行う SQL クエリを指します。

トランザクショナルクエリ (OLTP、オンライントランザクション処理) がクエリごとに数行しか読み書きしないため、ミリ秒で完了するのに対して、分析クエリは常に数十億または数兆行を処理します。

多くのユースケースでは、分析クエリは「リアルタイム」である必要があります。つまり、1 秒未満で結果を返す必要があります。

行指向ストレージと列指向ストレージ

このようなパフォーマンスを実現するには、適切なデータ「方向」が必要です。

データベースは、データを行指向または列指向 に保存します。

行指向データベースでは、連続したテーブルの行が順番に保存されます。このレイアウトにより、各行のカラム値が一緒に保存されるため、行を迅速に取得できます。

ClickHouse は列指向データベースです。このようなシステムでは、テーブルは一連のカラムコレクションとして保存されます。つまり、各カラムの値は順次一緒に保存されます。このレイアウトは、単一の行を復元するのが難しくなります(行の値の間に隙間ができるため)が、フィルターや集計などのカラム操作は行指向データベースよりもはるかに高速になります。

この違いは、100 百万行の実際の匿名化されたウェブ分析データ を処理する例のクエリで最もよく説明できます: