Univerzální jedinečný identifikátor (UUID), známý také jako globálně jedinečný identifikátor (GUID), je široce používán v počítačových systémech.
Jedná se o 128bitový kód, který je generován systémem na základě proměnných a konstant: aktuální čas, MAC adresa, SHA-1 hash, jmenný prostor MD5. Konečný výsledek generování UUID, zobrazený jako 32místný alfanumerický kód oddělený pomlčkami, se může zdát libovolný, ale ve skutečnosti je výsledkem složitých výpočtů. Počítač tedy kód „nevymýšlí“, ale tvoří jej ze specifických technických veličin, které jsou v daném čase relevantní.
Pravděpodobnost, že bude stejný UUID vygenerován na dvou různých počítačích v různých časech, má tendenci k nule, což umožňuje použít výsledné kódy pro bodovou/místní identifikaci dat bez odkazu na koordinační centrum. Dnes je UUID/GUID všudypřítomný v online i offline sítích a efektivně funguje nejen v globálním internetovém prostoru, ale také v samostatných počítačových systémech.
Historie UUID
128bitové kódy UUID byly poprvé použity americkou společností Apollo Computer v 80. letech 20. století. Byly založeny na jednodušších 64bitových kódech používaných v Domain/OS a našly široké použití v počítačovém prostředí Open Software Foundation.
S příchodem prvních platforem Windows byl globálně jedinečný identifikátor zobecněn a standardizován. Microsoft převzal design DCE od Apollo Computer a zaregistroval jmenný prostor URN v RFC 4122. V roce 2005 byl tento jmenný prostor navržen jako nový standard organizací IETF a UUID bylo standardizováno v rámci ITU.
Dříve v roce 2002 byly zjištěny problémy s výkonem systému při používání UUID jako primárních klíčů v místních databázích. Ty byly opraveny ve verzi 4 přidáním nenáhodné přípony na základě systémového času počítače. Takzvaný přístup COMB (Combined GUID Time Identifier) zvýšil rizika duplikace kódu, ale zároveň výrazně zlepšil výkon při práci s Microsoft SQL Server.
S rozvojem IT technologií přestal být univerzální unikátní identifikátor vysoce specializovaným technickým nástrojem a dnes jej může používat každý. Pravděpodobnost opakování vygenerovaných kódů se nerovná nule, ale má tendenci k ní a lze jimi identifikovat jakoukoli digitální informaci, poté je lze sloučit do jednotlivých datových polí s minimálním rizikem opakování.
Výhody UUID
Generátory globálních jedinečných kódů nevyžadují centralizované srovnávání/synchronizaci dat a jsou volně dostupné všem uživatelům. Mezi hlavní výhody UUID patří:
- Minimální rizika „kolize“ (opakování) kódů. I přes jejich masivní používání bývá pravděpodobnost opakování nulová.
- Možnost spojovat různá pole dat pomocí UUID jako primárních (jedinečných) klíčů.
- Zjednodušená distribuce dat na více rozptýlených serverech.
- Možnost generovat kódy offline.
Unikátní identifikační kódy napsané ve formátu xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx umožňují rozptýleným systémům rozpoznat informace bez koordinace z jediného datového centra: s téměř nulovou pravděpodobností chyb/opakování. Tato funkce spolu se snadným používáním a malými požadavky na výkon počítače činí UUID žádaným a nepostradatelným v celé řadě odvětví IT a autonomních počítačových systémů.