Générateur d'UUID v7
Créez des UUID version 7 ordonnés dans le temps, qui se trient par date de création : idéal pour les clés primaires de base de données.
Générer des UUID v7 ordonnés dans le temps
L'UUID v7 réunit le meilleur des deux mondes : il est unique sans coordination, comme un UUID aléatoire, et se trie par date de création, comme un identifiant auto-incrémenté. C'est pourquoi la plupart des bases de données et des ORM le recommandent désormais pour les clés primaires.
Cette page ouvre le générateur d'UUID avec la version 7 sélectionnée. Les 48 premiers bits viennent de votre horloge ; le reste provient du générateur aléatoire sécurisé du navigateur.
Pourquoi l'ordre compte pour les bases de données
La plupart des bases de données relationnelles stockent les clés primaires dans un arbre B (B-tree). Une clé v4 aléatoire atterrit quelque part au milieu de l'index à chaque insertion, ce qui force des divisions de pages et disperse les lignes liées sur le disque. Une clé v7 est presque toujours plus grande que la précédente : les nouvelles lignes s'ajoutent donc à la fin, exactement comme avec une séquence d'entiers. Sur des tables de plusieurs millions de lignes, la différence de vitesse d'insertion et de taille d'index est significative.
v4, v7 et ULID comparés
| UUID v4 | UUID v7 | ULID | |
|---|---|---|---|
| Triable par date | Non | Oui | Oui |
| Bits aléatoires | 122 | 74 | 80 |
| Norme | RFC 9562 | RFC 9562 | Spécification communautaire |
| Tient dans une colonne UUID | Oui | Oui | Nécessite une conversion |
| Révèle la date de création | Non | Oui | Oui |
Relire l'horodatage
Collez un UUID v7 dans l'inspecteur situé sous le générateur : il décode l'heure qu'il contient. Vous pouvez faire de même à la main : les 12 premiers chiffres hexadécimaux, sans le tiret, sont les millisecondes écoulées depuis 1970. Pour 01926f3a-7c2b-7d4e-…, cela donne 0x01926f3a7c2b = 1728442956843, soit le 9 octobre 2024 à 03:02:36.843 UTC.
UUID v7 dans le code
- PostgreSQL 18+ :
uuidv7() - Python 3.14+ :
uuid.uuid7() - Java : la bibliothèque
uuid-creator,UuidCreator.getTimeOrderedEpoch() - Node.js : le paquet
uuid,import { v7 } from 'uuid' - .NET 9+ :
Guid.CreateVersion7()
Quand l'ordre chronologique n'a pas d'importance, l'UUID v4 en révèle moins. Si vous avez besoin d'une mise en forme à la Microsoft, voyez le générateur de GUID.