PostgreSQL 15〜18 の主要な新機能紹介 — UNIQUE NULLS NOT DISTINCT・uuidv7()・skip scan など
概要
そーだいなるらくがき帳が、PostgreSQL 15〜18 の各バージョンにわたる主要な新機能をまとめた記事を公開した。設計・運用の選択肢として知っておくと有用な機能が多く、特に PostgreSQL 18 の uuidv7() と skip scan が注目されている。
詳細
PostgreSQL 15
- UNIQUE NULLS NOT DISTINCT: 従来 NULL は一意制約の対象外だったが、この構文を使うと「NULL も1件だけ」という制約をDB側で保証できる
- MERGE 構文: 差分 DELETE や UPSERT の複合処理が可能
PostgreSQL 16
- pg_stat_io: I/O統計を詳細に閲覧可能。パフォーマンス問題の調査に有用
- SQL/JSON 系の機能強化
PostgreSQL 17
- JSON_TABLE: JSON データを表形式に変換
- MERGE RETURNING: MERGE 構文の結果を RETURNING で返せる
- 増分バックアップのサポート(pg_rman の代替に)
- VACUUM のメモリ管理改善
PostgreSQL 18
- uuidv7(): 時刻順の性質を持つ UUID。B-tree と相性が良くインデックス局所性を確保できる
- skip scan: 複合 B-tree インデックスで先頭列がなくても効果的に検索できるケースが増える
- 非同期 I/O・仮想生成列・pg_upgrade 時の統計保持
参照
- 出典: https://soudai.hatenablog.com/entry/2026/06/04/234835
- はてなブックマーク数: 38