uuidv7()
PostgreSQL 🟡 MidDéfinition
Fonction native ajoutée en PostgreSQL 18 (25 septembre 2025) qui génère des UUID version 7 : contrairement a UUIDv4 (aléatoire), les premiers bits d'un UUIDv7 encodent un timestamp, ce qui les rend triables chronologiquement et limite la fragmentation des index B-tree observée avec UUIDv4.
Analogie
Comme numéroter des tickets dans l'ordre d'arrivée (uuidv7) plutôt que de tirer un numéro au hasard dans un sac (uuidv4) : le tri redevient naturel.
Exemple de code
CREATE TABLE events (
id uuid PRIMARY KEY DEFAULT uuidv7(),
payload jsonb
);
-- Les id inseres restent ordonnes
-- chronologiquement dans l'index
Cas d'usage
Remplacer un UUIDv4 comme clé primaire quand l'ordre d'insertion doit rester exploitable, sans revenir a un SERIAL prévisible.
Anti-pattern
Garder uuidv4() par défaut sur une table a très fort volume d'écriture alors que la fragmentation d'index dégrade les performances.
Termes liés
Fiche mise à jour le 2026-09-27