Der Universally Unique Identifier (UUID), auch bekannt als Globally Unique Identifier (GUID), wird in Computersystemen häufig verwendet.
Es handelt sich um einen 128-Bit-Code, der vom System basierend auf Variablen und Konstanten generiert wird: aktuelle Zeit, MAC-Adresse, SHA-1-Hash, MD5-Namespace. Das Endergebnis der Generierung einer UUID, angezeigt als 32-stelliger alphanumerischer Code, getrennt durch Bindestriche, mag willkürlich erscheinen, ist aber tatsächlich das Ergebnis komplexer Berechnungen. Ein Computer „erfindet“ also keinen Code, sondern bildet ihn aus bestimmten technischen Größen, die zu einem bestimmten Zeitpunkt relevant sind.
Die Wahrscheinlichkeit, dass dieselbe UUID zu unterschiedlichen Zeiten auf zwei verschiedenen Computern generiert wird, tendiert gegen Null, was es ermöglicht, die resultierenden Codes zur punktuellen/lokalen Datenidentifizierung ohne Rückgriff auf das Koordinierungszentrum zu verwenden. Heutzutage ist UUID/GUID sowohl in Online- als auch Offline-Netzwerken allgegenwärtig und funktioniert nicht nur im globalen Internetraum, sondern auch in eigenständigen Computersystemen effektiv.
UUID-Verlauf
128-Bit-UUID-Codes wurden erstmals in den 1980er Jahren von der amerikanischen Firma Apollo Computer verwendet. Sie basierten auf den einfacheren 64-Bit-Codes, die in Domain/OS verwendet wurden, und fanden weit verbreitete Verwendung in der Computerumgebung der Open Software Foundation.
Mit dem Aufkommen der ersten Windows-Plattformen wurde die weltweit eindeutige Kennung verallgemeinert und standardisiert. Microsoft hat das DCE-Design von Apollo Computer übernommen und den URN-Namespace in RFC 4122 registriert. Letzterer wurde 2005 von der IETF als neuer Standard vorgeschlagen und UUID innerhalb der ITU standardisiert.
Anfang 2002 wurden Probleme mit der Systemleistung festgestellt, wenn UUIDs als Primärschlüssel in lokalen Datenbanken verwendet wurden. Diese wurden in Version 4 behoben, indem ein nicht zufälliges Suffix basierend auf der Systemzeit des Computers hinzugefügt wurde. Der sogenannte COMB-Ansatz (Combined GUID Time Identifier) erhöhte die Risiken der Codeduplizierung, verbesserte aber gleichzeitig die Leistung bei der Arbeit mit Microsoft SQL Server deutlich.
Mit der Entwicklung der IT-Technologien ist der universelle eindeutige Identifikator kein hochspezialisiertes technisches Werkzeug mehr und kann heute von jedem genutzt werden. Die Wiederholungswahrscheinlichkeit der generierten Codes ist nicht gleich Null, sondern tendiert dazu, und jede digitale Information kann durch sie identifiziert werden, wonach sie mit minimalem Wiederholungsrisiko zu einzelnen Datenarrays kombiniert werden kann.
UUID-Vorteile
Generatoren globaler eindeutiger Codes erfordern keinen zentralen Datenabgleich/-synchronisierung und sind für alle Benutzer frei verfügbar. Zu den Hauptvorteilen von UUID gehören:
- Minimales Risiko einer „Kollision“ (Wiederholung) von Codes. Trotz ihres massiven Einsatzes tendiert die Wiederholungswahrscheinlichkeit gegen Null.
- Möglichkeit, verschiedene Datenarrays mithilfe von UUIDs als primäre (eindeutige) Schlüssel zu verbinden.
- Vereinfachte Verteilung von Daten auf mehrere verteilte Server.
- Möglichkeit, Codes offline zu generieren.
Eindeutige Identifikationscodes, geschrieben im Format xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx, ermöglichen es verteilten Systemen, Informationen ohne Koordination von einem einzigen Rechenzentrum aus zu erkennen: mit einer nahezu null Wahrscheinlichkeit von Fehlern/Wiederholungen. Diese Funktion macht UUID zusammen mit der Benutzerfreundlichkeit und den geringen Anforderungen an die Computerleistung in einer Vielzahl von IT-Branchen und autonomen Computersystemen gefragt und unverzichtbar.