Universal Unique Identifier (UUID), også kjent som Globally Unique Identifier (GUID), har blitt mye brukt i datasystemer.
Det er en 128-bits kode som genereres av systemet basert på variabler og konstanter: gjeldende tid, MAC-adresse, SHA-1-hash, MD5-navneområde. Sluttresultatet av å generere en UUID, vist som en 32-tegns alfanumerisk kode atskilt med bindestreker, kan virke vilkårlig, men faktisk er det et resultat av komplekse beregninger. En datamaskin «oppfinner» altså ikke en kode, men danner den fra spesifikke tekniske størrelser som er relevante på et gitt tidspunkt.
Sannsynligheten for at samme UUID vil bli generert på to forskjellige datamaskiner til forskjellige tider har en tendens til null, noe som gjør det mulig å bruke de resulterende kodene for punkt/lokal dataidentifikasjon uten referanse til koordinasjonssenteret. I dag er UUID/GUID allestedsnærværende i både online og offline nettverk, og fungerer effektivt ikke bare i det globale Internett-området, men også i frittstående datasystemer.
UUID-historikk
128-biters UUID-koder ble først brukt av det amerikanske selskapet Apollo Computer på 1980-tallet. De var basert på de enklere 64-bits kodene som ble brukt i domene/OS og fant utbredt bruk i datamiljøet Open Software Foundation.
Med ankomsten av de første Windows-plattformene ble den globalt unike identifikatoren generalisert og standardisert. Microsoft tok i bruk DCE-designet fra Apollo Computer og registrerte URN-navneområdet i RFC 4122. I 2005 ble sistnevnte foreslått som en ny standard av IETF, og UUID ble standardisert innen ITU.
Tidligere i 2002 ble problemer med systemytelse identifisert ved bruk av UUID-er som primærnøkler i lokale databaser. Disse ble fikset i versjon 4 ved å legge til et ikke-tilfeldig suffiks basert på datamaskinens systemtid. Den såkalte COMB (Combined GUID Time Identifier)-tilnærmingen økte risikoen for kodeduplisering, men forbedret samtidig ytelsen betydelig når du arbeider med Microsoft SQL Server.
Med utviklingen av IT-teknologier har den universelle unike identifikatoren sluttet å være et høyt spesialisert teknisk verktøy, og i dag kan alle bruke den. Sannsynligheten for repetisjon av de genererte kodene er ikke lik null, men har en tendens til det, og all digital informasjon kan identifiseres av dem, hvoretter de kan kombineres til enkeltdatamatriser med minimal risiko for repetisjon.
UUID-fordeler
Generatorer av globale unike koder krever ikke sentralisert dataavstemming/synkronisering og er fritt tilgjengelig for alle brukere. De viktigste fordelene med UUID inkluderer:
- Minimal risiko for "kollisjon" (repetisjon) av koder. Til tross for deres massive bruk, har sannsynligheten for gjentakelse en tendens til null.
- Mulighet til å slå sammen ulike arrays av data ved å bruke UUID-er som primære (unike) nøkler.
- Forenklet distribusjon av data på tvers av flere spredte servere.
- Mulighet til å generere koder offline.
Unike identifikasjonskoder, skrevet i formatet xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx, lar spredte systemer gjenkjenne informasjon uten koordinering fra et enkelt datasenter: med en nesten null sannsynlighet for feil/repetisjoner. Denne funksjonen, sammen med brukervennlighet og små krav til datamaskinytelse, gjør UUID etterspurt og uunnværlig i en lang rekke IT-industrier og autonome datasystemer.