UUID (Universally Unique Identifier), även känd som Globally Unique Identifier (GUID), har använts flitigt i datorsystem.
Det är en 128-bitars kod som genereras av systemet baserat på variabler och konstanter: aktuell tid, MAC-adress, SHA-1-hash, MD5-namnutrymme. Slutresultatet av att generera ett UUID, som visas som en 32-teckens alfanumerisk kod separerad med bindestreck, kan verka godtyckligt, men i själva verket är det resultatet av komplexa beräkningar. En dator ”uppfinner” alltså inte en kod, utan formar den från specifika tekniska storheter som är relevanta vid en given tidpunkt.
Sannolikheten att samma UUID kommer att genereras på två olika datorer vid olika tidpunkter tenderar att vara noll, vilket gör det möjligt att använda de resulterande koderna för punkt-/lokal dataidentifiering utan referens till koordinationscentret. Idag finns UUID/GUID allestädes närvarande i både online- och offlinenätverk och fungerar effektivt inte bara i det globala internetutrymmet utan även i fristående datorsystem.
UUID-historik
128-bitars UUID-koder användes först av det amerikanska företaget Apollo Computer på 1980-talet. De var baserade på de enklare 64-bitarskoder som användes i Domain/OS och fann utbredd användning i Open Software Foundations datormiljö.
Med tillkomsten av de första Windows-plattformarna generaliserades och standardiserades den globalt unika identifieraren. Microsoft antog DCE-designen från Apollo Computer och registrerade URN-namnområdet i RFC 4122. 2005 föreslogs den senare som en ny standard av IETF, och UUID standardiserades inom ITU.
Tidigare 2002 identifierades systemprestandaproblem när UUID användes som primärnycklar i lokala databaser. Dessa fixades i version 4 genom att lägga till ett icke-slumpmässigt suffix baserat på datorns systemtid. Den så kallade COMB-metoden (Combined GUID Time Identifier) ökade riskerna för kodduplicering, men förbättrade samtidigt prestandan avsevärt när man arbetade med Microsoft SQL Server.
Med utvecklingen av IT-teknik har den universella unika identifieraren upphört att vara ett mycket specialiserat tekniskt verktyg, och idag kan alla använda den. Sannolikheten för upprepning av de genererade koderna är inte lika med noll, men tenderar till det, och all digital information kan identifieras av dem, varefter de kan kombineras till enstaka datamatriser med minimal risk för upprepning.
UUID-fördelar
Generatorer av globala unika koder kräver inte centraliserad dataavstämning/synkronisering och är fritt tillgängliga för alla användare. De främsta fördelarna med UUID inkluderar:
- Minimala risker för "kollision" (upprepning) av koder. Trots deras massiva användning tenderar sannolikheten för upprepning att vara noll.
- Möjlighet att sammanfoga olika datamatriser med hjälp av UUID:er som primära (unika) nycklar.
- Förenklad distribution av data över flera spridda servrar.
- Möjlighet att generera koder offline.
Unika identifikationskoder, skrivna i formatet xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx, tillåter spridda system att känna igen information utan koordination från ett enda datacenter: med en nästan noll sannolikhet för fel/upprepningar. Denna funktion, tillsammans med användarvänlighet och små krav på datorprestanda, gör UUID efterfrågad och oumbärlig i en mängd olika IT-branscher och autonoma datorsystem.