L'identifiant universel unique (UUID), également connu sous le nom d'identifiant global unique (GUID), a été largement utilisé dans les systèmes informatiques.
Il s'agit d'un code 128 bits généré par le système en fonction de variables et de constantes : heure actuelle, adresse MAC, hachage SHA-1, espace de noms MD5. Le résultat final de la génération d'un UUID, affiché sous la forme d'un code alphanumérique de 32 caractères séparés par des traits d'union, peut sembler arbitraire, mais en fait c'est le résultat de calculs complexes. Ainsi, un ordinateur n'"invente" pas un code, mais le forme à partir de grandeurs techniques précises et pertinentes à un instant donné.
La probabilité que le même UUID soit généré sur deux ordinateurs différents à des moments différents tend vers zéro, ce qui permet d'utiliser les codes résultants pour l'identification des données ponctuelles/locales sans référence au centre de coordination. Aujourd'hui, UUID/GUID est omniprésent dans les réseaux en ligne et hors ligne, et fonctionne efficacement non seulement dans l'espace Internet mondial, mais également dans les systèmes informatiques autonomes.
Historique UUID
Les codes UUID 128 bits ont été utilisés pour la première fois par la société américaine Apollo Computer dans les années 1980. Ils étaient basés sur les codes 64 bits plus simples utilisés dans Domain/OS et ont été largement utilisés dans l'environnement informatique de l'Open Software Foundation.
Avec l'avènement des premières plates-formes Windows, l'identifiant unique au monde a été généralisé et standardisé. Microsoft a adopté la conception DCE d'Apollo Computer et a enregistré l'espace de noms URN dans la RFC 4122. En 2005, cette dernière a été proposée comme nouvelle norme par l'IETF et l'UUID a été normalisé au sein de l'UIT.
Plus tôt en 2002, des problèmes de performances système ont été identifiés lors de l'utilisation d'UUID comme clés primaires dans les bases de données locales. Ceux-ci ont été corrigés dans la version 4 en ajoutant un suffixe non aléatoire basé sur l'heure système de l'ordinateur. L'approche dite COMB (Combined GUID Time Identifier) augmente les risques de duplication de code, mais en même temps améliore considérablement les performances lorsque l'on travaille avec Microsoft SQL Server.
Avec le développement des technologies informatiques, l'identifiant unique universel a cessé d'être un outil technique hautement spécialisé, et aujourd'hui tout le monde peut l'utiliser. La probabilité de répétition des codes générés n'est pas égale à zéro, mais tend vers elle, et toute information numérique peut être identifiée par eux, après quoi ils peuvent être combinés en tableaux de données uniques avec un minimum de risques de répétition.
Avantages UUID
Les générateurs de codes uniques mondiaux ne nécessitent pas de réconciliation/synchronisation centralisée des données et sont librement accessibles à tous les utilisateurs. Les principaux avantages de l'UUID incluent :
- Risques minimes de "collision" (répétition) des codes. Malgré leur utilisation massive, la probabilité de répétition tend vers zéro.
- Possibilité de joindre différents tableaux de données en utilisant des UUID comme clés primaires (uniques).
- Répartition simplifiée des données sur plusieurs serveurs dispersés
- Possibilité de générer des codes hors ligne.
Des codes d'identification uniques, écrits au format xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx, permettent aux systèmes dispersés de reconnaître les informations sans coordination à partir d'un seul centre de données : avec une probabilité quasi nulle d'erreurs/de répétitions. Cette fonctionnalité, associée à la facilité d'utilisation et aux faibles exigences de performances informatiques, rend l'UUID très demandé et indispensable dans une grande variété d'industries informatiques et de systèmes informatiques autonomes.