【クリックハウス】
ClickHouse とは?
💡 ペタバイトのデータも一瞬で集計!ロシア生まれの爆速カラムナDB
📌 このページのポイント
ClickHouseってどうしてそんなに速いの?
秘密は「列指向」にあるよ。普通のDBは1行ずつデータを保存するけど、ClickHouseは列ごとにまとめて保存する。「全ユーザーの年齢の平均」みたいな集計のとき、年齢列だけ読めばいいから圧倒的に速いんだ
行指向と列指向って、どれくらい差が出るの?
100列あるテーブルで1列だけ集計する場合、行指向だと100列分のデータを全部読む。列指向なら1列分だけ。つまり100分の1のデータ量で済む計算だよ。しかも同じ型のデータが並ぶから圧縮効率もすごく高いんだ
じゃあ普通のアプリのDBとしても使えるの?
集計は得意だけど、1行ずつのUPDATEやDELETEは苦手なんだ。だから通常のアプリのDBにはMySQLやPostgreSQLを使って、分析用にClickHouseにデータを流す構成が多いよ
どんな会社が使ってるの?
CloudflareのDNS分析、GitHubのイベント分析、Uberのリアルタイムダッシュボードなど、大量のイベントデータを扱う企業で採用されているよ。日本でもログ分析基盤として導入が増えてるんだ
DuckDBとはどう使い分けるの?
まとめ:ざっくりこれだけ覚えればOK!
「ClickHouse」って出てきたら「大量データの集計が爆速な列指向データベース」と思えればだいたいOK!
📖 おまけ:英語の意味
「ClickHouse」 = クリックの倉庫
💬 もともとYandexのWeb広告のクリックログを分析するために作られたから「Click(クリック)+ House(倉庫)」という名前になったんだよ