Générateur UUID v7
Générez des identifiants UUID v7 avec des horodatages Unix Epoch intégrés, la génération en masse et des options de format
Entrée
Sortie
Documentation
Qu'est-ce que UUID v7 ?
UUID v7 est la version la plus récente des identifiants universellement uniques définie dans la RFC 9562. Contrairement aux versions plus anciennes comme UUID v4 (purement aléatoire) ou UUID v1 (utilise l'adresse MAC), UUID v7 intègre directement un horodatage Unix Epoch de 48 bits en millisecondes dans l'identifiant. Cela rend les valeurs UUID v7 naturellement triables par ordre de création — un avantage majeur pour l'indexation de bases de données, les systèmes distribués et la journalisation d'événements où l'ordre chronologique est important.
Étant donné qu'UUID v7 n'incorpore pas d'adresses MAC, il évite les problèmes de confidentialité associés à UUID v1. Les bits restants après l'horodatage et les champs de version/variante sont remplis de données aléatoires ou monotones, garantissant l'unicité même lorsque plusieurs UUID sont générés dans la même milliseconde.
Comment UUID v7 est construit
Un UUID v7 est composé de 128 bits organisés comme suit :
- Bits 0–47 : Un horodatage Unix Epoch non signé big-endian de 48 bits en millisecondes
- Bits 48–51 : Le champ de version sur 4 bits, défini à
0111(7) - Bits 52–63 : 12 bits de données aléatoires ou monotones pour une précision ou une unicité sous la milliseconde
- Bits 64–65 : Le champ de variante sur 2 bits, défini à
10(RFC 9562) - Bits 66–127 : 62 bits de données aléatoires ou monotones pour une unicité supplémentaire
Cette structure signifie que les UUID générés plus tard dans le temps seront toujours triés après les plus anciens au niveau de la milliseconde, ce qui les rend idéaux comme clés primaires dans les bases de données indexées en B-tree.
Description de l'outil
Ce générateur UUID v7 crée des UUID version 7 conformes à la RFC 9562 avec une décomposition visuelle de l'horodatage intégré. Générez un ou jusqu'à 100 UUID à la fois, basculez entre la mise en forme majuscule et minuscule, et choisissez d'inclure ou non les tirets. L'outil extrait et affiche également l'horodatage Unix Epoch intégré du premier UUID généré, vous permettant de vérifier l'heure de création encodée dans chaque identifiant.
Exemples
| Format | Exemple de sortie |
|---|---|
| Standard | 019544a2-3b4c-7d8e-9f01-2a3b4c5d6e7f |
| Majuscules | 019544A2-3B4C-7D8E-9F01-2A3B4C5D6E7F |
| Sans tirets | 019544a23b4c7d8e9f012a3b4c5d6e7f |
Fonctionnalités
- Génération en masse : Générez de 1 à 100 valeurs UUID v7 à la fois grâce à un curseur de quantité
- Bascule majuscules : Passez de la sortie en minuscules à la sortie en majuscules
- Bascule tirets : Incluez ou supprimez les tirets pour des formats compacts
- Extraction de l'horodatage : Affiche automatiquement l'horodatage Unix Epoch intégré dans l'UUID généré
- Téléchargement : Exportez les UUID générés sous forme de fichier texte pour une utilisation par lot
Cas d'utilisation
- Générer des clés primaires triables par ordre chronologique pour des bases de données à grande échelle où les performances d'insertion et la localité sont importantes
- Créer des identifiants à incrémentation monotone pour des systèmes distribués de streaming d'événements comme Kafka ou Pulsar
- Remplacer UUID v4 dans les applications nécessitant un ordre chronologique sans colonne d'horodatage séparée
UUID v7 vs autres versions
| Version | Basé sur le temps | Triable | Respect de la vie privée | Aléatoire |
|---|---|---|---|---|
| v1 | Oui | Non | Non (utilise MAC) | Faible |
| v4 | Non | Non | Oui | Élevé |
| v6 | Oui | Oui | Non (utilise MAC) | Faible |
| v7 | Oui | Oui | Oui | Moyen |
UUID v7 combine les meilleures qualités : triabilité basée sur le temps sans exposer les identifiants matériels, avec suffisamment d'aléatoire pour éviter les collisions entre les nœuds distribués.
Explication des options
- Quantité (1–100) : Nombre de valeurs UUID v7 à générer en un seul lot. Tous les UUID d'un lot partagent le même horodatage approximatif mais diffèrent dans leurs bits aléatoires.
- Majuscules : Lorsque cette option est activée, les UUID sont générés avec des caractères hexadécimaux en majuscules (A–F au lieu de a–f).
- Tirets : Lorsque cette option est activée (par défaut), les UUID incluent le groupement standard avec tirets 8-4-4-4-12. Désactivez cette option pour obtenir une chaîne hexadécimale compacte de 32 caractères.
FAQ
UUID v7 peut-il générer des collisions ?
Les collisions sont extrêmement improbables. Même dans la même milliseconde, les 74 bits de données aléatoires/monotones offrent plus de 18 quintillions de combinaisons possibles. La bibliothèque uuid utilise également des compteurs monotones pour garantir l'unicité au sein d'un processus.
UUID v7 est-il rétrocompatible avec UUID v4 ? Oui. UUID v7 suit le même format 128 bits, 8-4-4-4-12 et est valide partout où les UUID sont acceptés. Les colonnes UUID existantes, les parseurs et les validateurs fonctionnent sans modification.
Quand dois-je utiliser UUID v7 plutôt qu'UUID v4 ? Utilisez UUID v7 lorsque votre cas d'utilisation bénéficie de clés ordonnées dans le temps — par exemple, comme clés primaires de base de données où les performances de l'index B-tree s'améliorent avec des insertions séquentielles. Utilisez UUID v4 lorsque l'ordre est sans importance et que vous souhaitez un maximum d'aléatoire.