标签: UUID

避免使用 UUID 第 4 版主键(适用于 Postgres)

避免使用 UUID 第 4 版主键(适用于 Postgres)

鉴于其性能缺陷、普遍误解及可替代方案的存在,我最终形成了一个简单立场:全面避免使用UUID,

探索 PostgreSQL 18 的全新 UUIDv7 支持

探索 PostgreSQL 18 的全新 UUIDv7 支持

Postgres 18 中引入的 UUIDv7 解决了将完全随机的 UUIDv4 用作主键时存在的性能缺陷。通过加入时间戳,UUIDv7 确保新生成标识符具有天然排序性,从而实现高效的顺序插入、提升缓存利用率并减少索引碎片。

UUIDv7 登陆 PostgreSQL 18

UUIDv7 登陆 PostgreSQL 18

PostgreSQL 18新增函数uuidv7()用于生成UUIDv7值。其实现包含标准允许但非强制要求的12位亚毫秒级时间戳小数部分,确保同一Postgres会话(即相同后端进程)生成的所有UUIDv7值具有单调性。

33 种编程语言的 UUIDv7 实现

33 种编程语言的 UUIDv7 实现

UUIDv7 与广泛使用的 UUIDv4 等同类产品一样,都是 128 位唯一标识符。但与 v4 不同的是,UUIDv7 可进行时间排序,精度为 1 毫秒。通过结合时间戳和随机部分,UUIDv7 成为数据库(包括分布式数据库)中记录标识符的绝佳选择。