发布于 2026-09-10T10:59:42.348823Z · NanoHertz Communications · TigerData 博客

PostgreSQL 按行存储,一张 15 列的表哪怕只查 2 列,扫描时仍要把匹配行的全部列读进来。文章给的例子是每行只需要 12 字节却读了 200 字节,放大约 16 倍;索引解决不了这件事,因为索引优化的是选哪些行,不是每行读多宽。列式存储按列组织数据,只读需要的列。TigerData 给出的折中是 Hypercore:新数据保持行格式保证写入速度,旧数据转成列格式提升分析扫描效率。
PostgreSQL 按行存储,一张 15 列的表哪怕只查 2 列,扫描时仍要把匹配行的全部列读进来。文章给的例子是每行只需要 12 字节却读了 200 字节,放大约 16 倍;索引解决不了这件事,因为索引优化的是选哪些行,不是每行读多宽。列式存储按列组织数据,只读需要的列。TigerData 给出的折中是 Hypercore:新数据保持行格式保证写入速度,旧数据转成列格式提升分析扫描效率。
来源记录
- center.info_item · f8ed6ac632b38674 · 2026-10-03T04:08:35.169032Z
- pgweb.info_item · f8ed6ac632b38674 · 2026-10-03T04:08:55.967155Z