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

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

换用 UUID v7 主键后插入平均快 23 倍 RSS

Andrew Atkinson 记录了一次把 UUID 主键默认值从 v1、v4 换成 v7 的迁移,数据库跑在 PostgreSQL 18.4。改默认值只要一条 ALTER TABLE,但它需要表级排他锁,连 SELECT 都会被挡住,团队靠很短的锁超时、大量重试并主动取消持锁查询才完成切换。收益最大的是一张数十亿行、每分钟被调用一万两千次的多行插入语句,平均执行时间快了 23 倍。v7 的时间有序还能减少页分裂、缩小索引,进而省下 CPU 与 I/O。

发布于 2026-09-10T10:59:49.236885Z · Andrew Atkinson · andyatkinson.com
UUID 主键 性能

Andrew Atkinson 记录了一次把 UUID 主键默认值从 v1、v4 换成 v7 的迁移,数据库跑在 PostgreSQL 18.4。改默认值只要一条 ALTER TABLE,但它需要表级排他锁,连 SELECT 都会被挡住,团队靠很短的锁超时、大量重试并主动取消持锁查询才完成切换。收益最大的是一张数十亿行、每分钟被调用一万两千次的多行插入语句,平均执行时间快了 23 倍。v7 的时间有序还能减少页分裂、缩小索引,进而省下 CPU 与 I/O。

Andrew Atkinson 记录了一次把 UUID 主键默认值从 v1、v4 换成 v7 的迁移,数据库跑在 PostgreSQL 18.4。改默认值只要一条 ALTER TABLE,但它需要表级排他锁,连 SELECT 都会被挡住,团队靠很短的锁超时、大量重试并主动取消持锁查询才完成切换。收益最大的是一张数十亿行、每分钟被调用一万两千次的多行插入语句,平均执行时间快了 23 倍。v7 的时间有序还能减少页分裂、缩小索引,进而省下 CPU 与 I/O。

原始来源 ↗

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