Redshift是AWS的数据仓库服务,可以对PB级别数据运行复杂查询,GCP对标产品是BigQuery
它的架构如下,分为Leader node和Compute node:

一个Redshift集群至少由一个计算节点(compute node)组成,它上面分为多个slice,每个slice上有独自的磁盘和内存资源。每个node的slice数量由节点大小决定
Leader node用户执行查询计划,以及将compute node的查询结果做聚合返回给用户
客户端 (BI工具/JDBC/ODBC)
│
▼
┌─────────────────┐
│ Leader Node │ ← 协调者,解析SQL,分发任务
│ (1个,固定) │
└────────┬────────┘
│
┌───────────────┼───────────────┐
▼ ▼ ▼
┌────────────┐ ┌────────────┐ ┌────────────┐
│ Compute │ │ Compute │ │ Compute │ ← 干活的
│ Node 1 │ │ Node 2 │ │ Node 3 │
└────────────┘ └────────────┘ └────────────┘
│ │ │
▼ ▼ ▼
数据分片1 数据分片2 数据分片3
职责分工:
| 组件 | 职责 |
|---|---|
| Leader Node | 接收连接、解析 SQL、制定执行计划、分发任务、汇总结果 |
| Compute Node | 存储数据、执行扫描/过滤/聚合/JOIN、返回结果给 Leader |
详细对比:
| 特性 | Leader Node | Compute Node |
|---|---|---|
| 数量 | 1 个(固定) | 1-128 个(可扩展) |
| 存储数据 | ❌ 不存数据 | ✅ 存储数据 |
| 执行计算 | ❌ 只协调 | ✅ 实际计算 |
| 对外连接 | ✅ 唯一入口 | ❌ 不直接对外 |
| 收费 | ❌ 免费 | ✅ 按节点收费 |
必须有 Leader Node 吗?是的,必须有。但有个特殊情况:
| 集群类型 | Leader Node |
|---|---|
| 多节点集群(2+ Compute) | Leader Node 独立存在 |
| 单节点集群(1 Compute) | Leader 和 Compute 合并在同一节点 |
AWS 官方说法:Leader Node 不单独计费。