Postgres 17 与 18 版本性能对比
18版本新增两种替代方案:worker和io_uring。worker(新默认值)会让Postgres使用专用的后台工作进程处理所有I/O操作。io_uring因性能优势备受期待,它利用Linux的io_uring接口实现所有磁盘读取的异步处理,有望显著提升I/O性能。
探索 PostgreSQL 18 的全新 UUIDv7 支持
Postgres 18 中引入的 UUIDv7 解决了将完全随机的 UUIDv4 用作主键时存在的性能缺陷。通过加入时间戳,UUIDv7 确保新生成标识符具有天然排序性,从而实现高效的顺序插入、提升缓存利用率并减少索引碎片。
UUIDv7 登陆 PostgreSQL 18
PostgreSQL 18新增函数uuidv7()用于生成UUIDv7值。其实现包含标准允许但非强制要求的12位亚毫秒级时间戳小数部分,确保同一Postgres会话(即相同后端进程)生成的所有UUIDv7值具有单调性。
Postgres 18:RETURNING子句中的OLD和NEW行
本次发布新增功能:在INSERT、UPDATE、DELETE和MERGE命令的RETURNING子句中,可同时访问旧值(OLD)和新值(NEW)。
如果我们将Postgres当作SQLite使用会怎样?
Postgres的扩展功能开箱即用。而在SQLite中,每次使用数据库时都需重新加载扩展,且必须在客户端系统上编译并安装。Postgres显然不存在此类问题,因其采用服务器-客户端架构,所有必要扩展均预装在服务器端。
