Skip to content

CORE CONCEPTS · 分析型 · 分布式 OLAP

ClickHouse 核心知识

ClickHouse 的性能来自 MergeTree、稀疏主索引、后台合并和列式向量化;表结构与 ORDER BY 往往比增加节点更重要。

学完应该能做到

  • 能设计分区键和排序键
  • 能解释 parts/merges
  • 能区分复制、分片和分布式表

三个必须建立的心智模型

01

MergeTree 与排序键

数据按 part 写入并按 ORDER BY 排序,稀疏索引通过 granule 跳过数据。

  • 排序键服务主要过滤路径
  • 分区不要过细
  • 检查 primary key 命中率
02

合并与变更

后台 merge 重写 parts;mutation、TTL 和去重都可能放大 I/O。

  • 监控 part 数量
  • 避免高频小批写入
  • 理解 FINAL 的代价
03

集群拓扑

副本解决可用性,分片解决容量,Distributed 表负责路由。

  • 明确一致性预期
  • 设计 sharding key
  • Keeper 需要独立容量规划

把知识落到工程决策

建模前

先写出访问模式、正确性边界、数据生命周期和故障预算,再决定表、键、索引或分区。

上线前

使用接近生产的数据分布与并发压测,记录查询计划、资源水位和恢复时间作为基线。

运行中

监控延迟分位数、容量增长、后台维护与复制健康;报警必须能映射到可执行处置步骤。

Released under the MIT License.