資料與儲存 2026 年 5 月 7 日

2026-05-07 — ClickHouse vs Snowflake 寫入側成本 22 倍差距

primary=https://clickhouse.com/blog/write-side-cost-performance-snowflake-clickhouse

ClickHouse 對比 Snowflake:寫入側成本差距 22 倍的根本原因

ClickHouse Blog · 2026-05-06

ClickHouse 工程團隊發布基準測試報告,以持續每秒寫入 100 萬行的速率比較 ClickHouse 與 Snowflake 在寫入側成本(write-side cost)上的差距,核心結論是:ClickHouse 以 22 倍更低的成本取得查詢就緒(query-ready)資料,並以 28 倍更佳的成本效益完成整個寫入與排序流程。

原本的問題

現代 OLAP 系統的效率仰賴資料在寫入後是否已按查詢欄位排序。「查詢就緒資料」的定義是引擎能夠跳過大部分表格讀取的狀態,這需要兩個條件:

  • columnar pruning:略過非目標欄位
  • chunk-level pruning:根據值域範圍跳過整個資料塊

chunk-level pruning 只在資料按篩選欄排序後才有效——混亂順序的塊無法根據值域跳過。因此「何時完成排序」決定了分析查詢能否立即受益。

架構差異

Snowflake 採用兩階段方式:資料以到達順序寫入 50–500 MB 的 micro-partition,再由獨立的 Automatic Clustering 服務在寫入後重新組織。這個後台服務在大規模持續攝取下成本極高——100B 行的基準中,攝取倉儲費用 $336,Automatic Clustering 費用高達 $2,500–$2,750,合計 $2,836–$3,086

ClickHouse 在寫入階段即對資料排序,生成有序的 data parts,後台 merge 在保持排序的情況下合併小 part 為大 part,不需要獨立的重排服務。100B 行的總成本為 $131,差距 22 倍。

規格細節

測試條件:

  • 攝取速率:持續 100 萬行 / 秒
  • 資料集:ClickBench web analytics(100B、200B、300B 行)
  • 兩系統使用相同排序鍵
  • 查詢:43 個 ClickBench 分析查詢
  • 定價:兩者均採企業級

儲存體積方面,Snowflake 在 1B 至 100B 行範圍內的壓縮後資料量比 ClickHouse 多 5 至 15 倍。在已排序的 100B 行上執行查詢,ClickHouse 花費 126 秒、成本 $16;Snowflake 花費 176 秒、成本 $25,速度快 28%、成本低 36%

影響範圍

Snowflake Automatic Clustering 在 100B 行攝取後 1.3 小時才開始,並在第 100B 行到達後 6.7 小時才完成。這段窗口內,新鮮資料無法充分受益於 chunk-level pruning。在 Agentic 分析場景下,單一使用者提問可能觸發數十個 SQL 查詢(schema 探索、驗證、重試、鑽取),每輪查詢的延遲和成本都直接影響整體體驗,寫入側成本在此成為系統設計的關鍵因素。

原始來源:ClickHouse Blog — Agentic analytics starts with query-ready data: the write-side cost of Snowflake vs. ClickHouse


End of article
0
Would love your thoughts, please comment.x
()
x