Универсалният уникален идентификатор (UUID), известен още като глобален уникален идентификатор (GUID), е широко използван в компютърните системи.
Това е 128-битов код, който се генерира от системата въз основа на променливи и константи: текущо време, MAC адрес, SHA-1 хеш, пространство от имена MD5. Крайният резултат от генерирането на UUID, показан като 32-знаков буквено-цифров код, разделен с тирета, може да изглежда произволен, но всъщност е резултат от сложни изчисления. По този начин компютърът не „измисля“ код, а го формира от конкретни технически величини, които са от значение в даден момент.
Вероятността един и същ UUID да бъде генериран на два различни компютъра по различно време клони към нула, което прави възможно използването на получените кодове за идентификация на точкови/локални данни без препратка към координационния център. Днес UUID/GUID е повсеместен както в онлайн, така и в офлайн мрежите и работи ефективно не само в глобалното интернет пространство, но и в самостоятелни компютърни системи.
История на UUID
128-битовите UUID кодове са използвани за първи път от американската компания Apollo Computer през 80-те години на миналия век. Те бяха базирани на по-простите 64-битови кодове, използвани в Domain/OS, и намериха широко приложение в изчислителната среда на Open Software Foundation.
С появата на първите платформи на Windows глобалният уникален идентификатор беше обобщен и стандартизиран. Microsoft възприе дизайна на DCE от Apollo Computer и регистрира пространството от имена на URN в RFC 4122. През 2005 г. последният беше предложен като нов стандарт от IETF, а UUID беше стандартизиран в рамките на ITU.
По-рано през 2002 г. бяха идентифицирани проблеми с производителността на системата при използване на UUID като първични ключове в локални бази данни. Те бяха коригирани във версия 4 чрез добавяне на неслучаен суфикс въз основа на системното време на компютъра. Така нареченият COMB (Combined GUID Time Identifier) подход увеличава рисковете от дублиране на код, но в същото време значително подобрява производителността при работа с Microsoft SQL Server.
С развитието на ИТ технологиите универсалният уникален идентификатор престана да бъде високоспециализиран технически инструмент и днес всеки може да го използва. Вероятността за повторение на генерираните кодове не е равна на нула, а клони към нея и всяка цифрова информация може да бъде идентифицирана чрез тях, след което да бъдат комбинирани в единични масиви от данни с минимални рискове от повторение.
Предимства на UUID
Генераторите на глобални уникални кодове не изискват централизирано съпоставяне/синхронизиране на данни и са свободно достъпни за всички потребители. Основните предимства на UUID включват:
- Минимални рискове от "сблъсък" (повтаряне) на кодове. Въпреки масовата им употреба, вероятността от повторение клони към нула.
- Възможност за обединяване на различни масиви от данни с помощта на UUID като първични (уникални) ключове.
- Опростено разпределение на данни между множество разпръснати сървъри.
- Възможност за генериране на кодове офлайн.
Уникалните идентификационни кодове, написани във формат xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx, позволяват на разпръснати системи да разпознават информация без координация от един център за данни: с почти нулева вероятност от грешки/повторения. Тази функция, заедно с лекотата на използване и малките изисквания за производителност на компютъра, прави UUID търсен и незаменим в голямо разнообразие от ИТ индустрии и автономни изчислителни системи.