Was ist UUID v7?
Eine UUID v7 beginnt mit einem 48 Bit langen Unix-Zeitstempel in Millisekunden. Dadurch liegen zeitlich nahe Werte auch im Index nahe beieinander, und neue Zeilen werden hinten angehängt statt über den B-Baum verteilt.
Die restlichen 74 Bit sind zufällig. v7 vereint also die Sortierbarkeit einer fortlaufenden Nummer mit der Kollisionssicherheit zufälliger Kennungen — und ist damit für Primärschlüssel in verteilten Systemen die naheliegendste Wahl.
Anleitung
- Wähle die Anzahl der UUIDs (1 bis 1000).
- Klicke auf Generieren — die Werte kommen bereits aufsteigend sortiert heraus.
- Kopiere einen Wert oder exportiere den Stapel als .txt oder .csv.
Anwendungsfälle
- Primärschlüssel in PostgreSQL, MySQL, SQL Server und SQLite.
- Ereignis- und Protokoll-IDs, die nach Zeit sortiert abgefragt werden.
- Warteschlangen und Änderungsprotokolle (Change Data Capture).
Wie UUID v7 im Vergleich abschneidet
| Option | Wann verwenden |
|---|---|
v4 | Reiner Zufall, ohne Zeitbezug — der Klassiker |
v6 | Ebenfalls sortierbar, aber mit dem 60-Bit-Zeitstempel von v1 |
ULID | Sortierbar, jedoch 26 Zeichen in Crockford-Base32 |
UUID-Versionen im Überblick
| Version | Sortierbar | Basiert auf | Geeignet für |
|---|---|---|---|
| v1 | Nein | Zeitstempel + MAC-Adresse | Altsysteme, die v1 weiterhin erwarten |
| v3 | Nein | MD5-Hash eines Namens | Deterministische Kennungen, wenn MD5 vorgeschrieben ist |
| v4 | Nein | 122 zufällige Bits | Nahezu jede allgemeine Kennung |
| v5 | Nein | SHA-1-Hash eines Namens | Wenn derselbe Name immer dieselbe Kennung ergeben muss |
| v6 | Ja | Zeitstempel, neu geordnet | Sortierbare Kennungen ohne Verzicht auf Zufall |
| v7 | Ja | Unix-Zeit in Millisekunden | Primärschlüssel in Datenbanken und Ereignis-IDs |
| v8 | Nein | Eigenes Bit-Layout | Herstellerspezifische oder experimentelle Formate |
Alle sieben Versionen sind 128 Bit lang und werden im selben Muster 8-4-4-4-12 geschrieben. Nur die Bedeutung der Bits ändert sich.
Häufige Fragen
Verrät v7, wann die Kennung entstanden ist?
Ja, der Zeitstempel steht offen am Anfang. Das ist gewollt, denn genau daher kommt die Sortierbarkeit. Wenn das Entstehungsdatum geheim bleiben muss, nimm v4.
Kann ich v7 als Primärschlüssel nehmen?
Ja, und es ist die bessere Wahl als v4, sobald die Spalte indiziert ist. Werte sind immer noch eindeutig, und Einfügungen bleiben sequenziell, was Schreiblast und Indexgröße senkt.
Bleiben v7-Werte innerhalb derselben Millisekunde eindeutig?
Ja. Ein monotones Hochzählen im Zufallsanteil stellt sicher, dass mehrere Kennungen aus derselben Millisekunde weiterhin aufsteigend und verschieden sind.