↑↓ 选择↵ 打开⌫ 切换范围完整搜索

PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。

高并发下 SELECT * 会让性能掉九成以上 RSS

在数亿行、高并发的 PostgreSQL 上,Jake Hertz 实测 SELECT * 这类通配符查询会把性能拉低九成以上。开销来自三处:不必要的 I/O、缓冲区缓存被污染,以及多余列的序列化传输。执行时整页 8KB 会被读入内存,所有列都要过一遍 MVCC 可见性判断,再序列化送上网络;宽行让每页装下的记录更少,读放大随之加剧。结论很朴素:只取真正用到的列。

发布于 2026-09-10T10:59:38.076086Z · Jake Hertz · TigerData 博客
性能 查询

在数亿行、高并发的 PostgreSQL 上,Jake Hertz 实测 SELECT * 这类通配符查询会把性能拉低九成以上。开销来自三处:不必要的 I/O、缓冲区缓存被污染,以及多余列的序列化传输。执行时整页 8KB 会被读入内存,所有列都要过一遍 MVCC 可见性判断,再序列化送上网络;宽行让每页装下的记录更少,读放大随之加剧。结论很朴素:只取真正用到的列。

在数亿行、高并发的 PostgreSQL 上,Jake Hertz 实测 SELECT * 这类通配符查询会把性能拉低九成以上。开销来自三处:不必要的 I/O、缓冲区缓存被污染,以及多余列的序列化传输。执行时整页 8KB 会被读入内存,所有列都要过一遍 MVCC 可见性判断,再序列化送上网络;宽行让每页装下的记录更少,读放大随之加剧。结论很朴素:只取真正用到的列。

原始来源 ↗

来源记录
  • center.info_item · 44f40e8fb01ec19c · 2026-10-03T04:08:35.169032Z
  • pgweb.info_item · 44f40e8fb01ec19c · 2026-10-03T04:08:55.967155Z