Qu'est-ce qu'un UUID ? Un guide simple sur les identifiants uniques
Si vous avez deja vu une chaine comme f47ac10b-58cc-4372-a567-0e02b2c3d479 dans une base de donnees, un fichier journal ou une reponse d’API, vous avez rencontre un UUID. Ils semblent intimidants, mais l’idee qui se cache derriere est simple et vraiment utile. Ce guide explique ce qu’est un UUID, pourquoi deux d’entre eux ne se heurtent pratiquement jamais et ou vous allez les croiser, ecrit pour les developpeurs mais lisible par tous.
Ce qu’est reellement un UUID
UUID signifie Identifiant Universellement Unique (Universally Unique Identifier). L’ecosysteme de Microsoft appelle souvent la meme chose un GUID (Identifiant Globalement Unique), et les deux termes sont interchangeables.
Un UUID est une valeur de 128 bits, c’est-a-dire simplement un tres grand nombre. Il s’ecrit sous la forme de 32 chiffres hexadecimaux repartis en cinq groupes separes par des traits d’union, selon un motif 8-4-4-4-12 :
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
C’est tout ce que c’est : une etiquette de longueur fixe dont le seul role est d’etre differente de toutes les autres etiquettes. Elle ne porte aucune signification en elle-meme, et c’est precisement le but. C’est un nom que vous pouvez distribuer sans vous coordonner avec qui que ce soit.
Pourquoi les collisions sont pratiquement impossibles
La raison pour laquelle les UUID fonctionnent tient a la taille colossale de l’espace dans lequel ils vivent. Une valeur de 128 bits compte environ 3,4 fois 10 puissance 38 combinaisons possibles. C’est un nombre comportant 39 chiffres avant la virgule.
Lorsque vous generez un UUID version 4, presque tous ces bits sont remplis de donnees aleatoires. Pour obtenir un doublon, il faudrait produire au hasard deux fois la meme valeur dans ce reservoir d’une taille astronomique. Les probabilites sont si faibles qu’en pratique, vous pouvez considerer chaque UUID nouvellement genere comme unique sans avoir a le verifier.
C’est ce qui les rend si pratiques : n’importe quelle machine, n’importe ou, peut frapper un UUID toute seule et avoir la certitude qu’il n’entrera pas en collision avec un autre cree ailleurs, sans aucune autorite centrale distribuant les numeros.
Ou les UUID sont utilises
Comme ils n’ont besoin d’aucune coordination, les UUID apparaissent partout ou des parties independantes d’un systeme doivent nommer des choses sans se parler.
- Cles primaires de base de donnees. Au lieu d’un identifiant sequentiel qui revele le nombre de lignes et impose un compteur central, une table peut utiliser un UUID, ce qui permet de creer des enregistrements sur differents serveurs en meme temps.
- Identifiants de requete et de trace d’API. Marquer chaque requete avec un UUID facilite le suivi d’un seul appel a travers les journaux de nombreux services.
- Systemes distribues. Lorsque des donnees sont creees hors ligne ou sur plusieurs noeuds qui se synchronisent ensuite, les UUID empechent deux enregistrements de revendiquer le meme identifiant.
- Noms de fichiers et de ressources. Les telechargements, les sessions et les objets temporaires recoivent souvent un UUID afin que leurs noms n’entrent jamais en collision.
Version 4 : la version aleatoire
Les UUID existent en plusieurs versions, mais celle que vous utiliserez le plus est la version 4, la variante aleatoire.
Un UUID v4 remplit presque tous ses bits de donnees aleatoires, quelques-uns etant reserves pour le marquer comme version 4. Le resultat n’exige aucune entree, aucun horodatage et aucune adresse materielle. Vous en demandez un et vous obtenez un nouvel identifiant aleatoire. Sa simplicite et son absence de dependances expliquent pourquoi la v4 est devenue le choix par defaut pour le code applicatif qui a simplement besoin d’une cle unique.
D’autres versions existent pour des besoins specifiques, comme le tri chronologique, mais si vous ne savez pas laquelle utiliser, la v4 est presque toujours la bonne reponse.
Generez des UUID dans votre navigateur
Quand vous en avez besoin d’un (ou d’un lot), vous pouvez les produire instantanement. Le Generateur d’UUID gratuit cree des UUID version 4 valides a la demande, prets a etre copies dans votre code, votre base de donnees ou un jeu de test.
Comme le Generateur d’UUID s’execute entierement dans votre navigateur, les valeurs sont generees sur votre propre machine, sans inscription et sans rien envoyer a un serveur. Cela le rend rapide et signifie que les identifiants ne quittent jamais votre appareil avant que vous ne les utilisiez.
Outils connexes
Quelques generateurs voisins couvrent des taches apparentees. Lorsque vous avez besoin d’un secret utilisable par un humain plutot que d’un identifiant, le Generateur de mots de passe cree des mots de passe aleatoires robustes selon vos regles de longueur et de caracteres. Pour des jetons arbitraires, des cles d’API ou des donnees de test d’une longueur personnalisee, le Generateur de chaines aleatoires vous donne un controle total sur l’alphabet. Et lorsque vous avez besoin d’une empreinte fixe d’un contenu plutot que d’une valeur aleatoire, le Generateur de hachage produit des sommes de controle comme SHA-256.
La version courte
Un UUID est un identifiant unique de 128 bits ecrit sous la forme de 32 chiffres hexadecimaux selon un motif 8-4-4-4-12, et son immense espace d’adressage rend les collisions pratiquement impossibles. La version 4 est le choix par defaut, aleatoire et sans dependances, utilise pour les cles de base de donnees, les identifiants de requete et les systemes distribues. Quand vous en avez besoin, le Generateur d’UUID les produit instantanement dans votre navigateur.
Essayez Générateur d'UUID maintenant
Générateur d'UUID gratuit (v4 / GUID) qui fonctionne dans votre navigateur. Créez de 1 à 500 UUID aléatoires instantanément et copiez-les en un clic, sans inscription.
Ouvrir Générateur d'UUID