Was ist UUID v7?

UUID v7 ist die neueste Version der Universally Unique Identifiers, definiert in RFC 9562. Im Gegensatz zu älteren Versionen wie UUID v4 (rein zufällig) oder UUID v1 (verwendet MAC-Adresse) bettet UUID v7 einen 48-Bit-Unix-Epoch-Zeitstempel in Millisekunden direkt in den Bezeichner ein. Dadurch sind UUID v7-Werte von Natur aus nach Erstellungszeit sortierbar – ein wesentlicher Vorteil für Datenbankindizierung, verteilte Systeme und Event-Logging, bei denen die chronologische Reihenfolge wichtig ist.

Da UUID v7 keine MAC-Adressen verwendet, vermeidet es die Datenschutzbedenken, die mit UUID v1 verbunden sind. Die verbleibenden Bits nach dem Zeitstempel und den Versions-/Variantenfeldern werden mit zufälligen oder monotonen Daten gefüllt, was Eindeutigkeit gewährleistet, selbst wenn mehrere UUIDs innerhalb derselben Millisekunde generiert werden.

Aufbau von UUID v7

Eine UUID v7 besteht aus 128 Bits, die wie folgt organisiert sind:

  • Bits 0–47: Ein 48-Bit-Big-Endian-vorzeichenloser Unix-Epoch-Zeitstempel in Millisekunden
  • Bits 48–51: Das 4-Bit-Versionsfeld, gesetzt auf 0111 (7)
  • Bits 52–63: 12 Bits zufälliger oder monotoner Daten für Sub-Millisekunden-Präzision oder Eindeutigkeit
  • Bits 64–65: Das 2-Bit-Variantenfeld, gesetzt auf 10 (RFC 9562)
  • Bits 66–127: 62 Bits zufälliger oder monotoner Daten für zusätzliche Eindeutigkeit

Diese Struktur stellt sicher, dass später generierte UUIDs bei der Sortierung immer nach früheren stehen – auf Millisekunden-Ebene – und macht sie ideal als Primärschlüssel in B-Baum-indizierten Datenbanken.

Beschreibung des Tools

Dieser UUID v7-Generator erstellt RFC 9562-konforme UUIDs der Version 7 mit einer visuellen Aufschlüsselung des eingebetteten Zeitstempels. Generieren Sie eine oder bis zu 100 UUIDs auf einmal, wechseln Sie zwischen Groß- und Kleinschreibung und wählen Sie, ob Bindestriche enthalten sein sollen. Das Tool extrahiert und zeigt außerdem den eingebetteten Unix-Epoch-Zeitstempel der ersten generierten UUID an, sodass Sie die in jedem Bezeichner kodierte Erstellungszeit überprüfen können.

Beispiele

Format Beispielausgabe
Standard 019544a2-3b4c-7d8e-9f01-2a3b4c5d6e7f
Großbuchstaben 019544A2-3B4C-7D8E-9F01-2A3B4C5D6E7F
Ohne Bindestriche 019544a23b4c7d8e9f012a3b4c5d6e7f

Funktionen

  • Massengeneration: Generieren Sie 1 bis 100 UUID v7-Werte auf einmal mit einem Mengenschieberegler
  • Großschreibung umschalten: Wechseln Sie zwischen Kleinbuchstaben- und Großbuchstabenausgabe
  • Bindestriche umschalten: Bindestriche ein- oder ausblenden für kompakte Formate
  • Zeitstempel-Extraktion: Zeigt automatisch den eingebetteten Unix-Epoch-Zeitstempel der generierten UUID an
  • Download-Unterstützung: Exportieren Sie generierte UUIDs als Textdatei zur Stapelverarbeitung

Anwendungsfälle

  • Zeitlich sortierbare Primärschlüssel für große Datenbanken generieren, bei denen Einfügeleistung und Lokalität wichtig sind
  • Monoton steigende Bezeichner für verteilte Event-Streaming-Systeme wie Kafka oder Pulsar erstellen
  • UUID v4 in Anwendungen ersetzen, die chronologische Sortierung ohne eine separate Zeitstempelspalte benötigen

UUID v7 im Vergleich zu anderen Versionen

Version Zeitbasiert Sortierbar Datenschutzkonform Zufälligkeit
v1 Ja Nein Nein (verwendet MAC) Gering
v4 Nein Nein Ja Hoch
v6 Ja Ja Nein (verwendet MAC) Gering
v7 Ja Ja Ja Mittel

UUID v7 vereint die besten Eigenschaften: zeitbasierte Sortierbarkeit ohne Offenlegung von Hardware-Bezeichnern, mit ausreichend Zufälligkeit zur Vermeidung von Kollisionen über verteilte Knoten hinweg.

Erklärung der Optionen

  • Anzahl (1–100): Wie viele UUID v7-Werte in einem einzelnen Stapel generiert werden sollen. Alle UUIDs in einem Stapel teilen denselben ungefähren Zeitstempel, unterscheiden sich jedoch in ihren zufälligen Bits.
  • Großbuchstaben: Wenn aktiviert, werden UUIDs mit Großbuchstaben-Hex-Zeichen ausgegeben (A–F statt a–f).
  • Bindestriche: Wenn aktiviert (Standard), enthalten UUIDs die standardmäßige 8-4-4-4-12-Bindestrichgruppierung. Deaktivieren für einen kompakten 32-Zeichen-Hex-String.

FAQ

Können UUID v7-Kollisionen auftreten? Kollisionen sind äußerst unwahrscheinlich. Selbst innerhalb derselben Millisekunde bieten die 74 Bits zufälliger/monotoner Daten über 18 Quintillionen mögliche Kombinationen. Die uuid-Bibliothek verwendet außerdem monotone Zähler, um Eindeutigkeit innerhalb eines Prozesses zu garantieren.

Ist UUID v7 abwärtskompatibel mit UUID v4? Ja. UUID v7 folgt demselben 128-Bit-Format mit 8-4-4-4-12-Struktur und ist überall gültig, wo UUIDs akzeptiert werden. Bestehende UUID-Spalten, Parser und Validatoren funktionieren ohne Änderungen.

Wann sollte ich UUID v7 statt UUID v4 verwenden? Verwenden Sie UUID v7, wenn Ihr Anwendungsfall von zeitlich geordneten Schlüsseln profitiert – zum Beispiel als Datenbankprimärschlüssel, bei denen die B-Baum-Index-Performance durch sequenzielle Einfügungen verbessert wird. Verwenden Sie UUID v4, wenn die Reihenfolge irrelevant ist und Sie maximale Zufälligkeit wünschen.