OLTP 与 OLAP 对比
English version: OLTP vs OLAP
OLTP 与 OLAP 的关键区别在于数据在磁盘上的物理存储方式。
定义
- OLTP(联机事务处理):行式存储模式。
- OLAP(联机分析处理):列式存储模式。
行式存储(OLTP)
- 行式数据库尽可能将整行存储在同一个块中。
- 最适合需要频繁更新的事务型工作负载。
列式存储(OLAP)
- 列式数据库将各列存储在连续的块中。
- 最适合分析查询和快速批量操作。
性能示例
假设一个数据库存储了共 100 GB 数据,包含 1 亿行和 100 列(每列 1 GB)。假设没有索引、分区或任何其他优化。
针对分析查询:男性的平均年龄是多少?
| 存储类型 | 读取数据量 |
|---|---|
| 行式数据库 | 100 GB(全部数据) |
| 列式数据库 | 2 GB(仅 age 和 gender 两列) |
这就是列式数据库能够执行快速批量操作的原因。