Všechny nástroje

Generátor UUID

UUID v4 je 128bitový náhodný identifikátor formátovaný jako 8-4-4-4-12 hex (např. 550e8400-e29b-41d4-a716-446655440000). Použijte pro primární klíče databáze, ID korelace a jedinečnost souboru bez centrálního alokátoru. Generuje se lokálně pomocí crypto.getRandomValues, pokud je k dispozici.
Výstup
dfdc4173-03b2-4b41-857d-d7bea83213c4

Jak vygenerovat UUID

1. Klikněte na generovat (nebo vygenerovat více, pokud je podporováno).
2. Zkopírujte UUID do schránky.
3. Vložte do požadavku API, vložení SQL nebo konfigurace.
4. Pokud vaše databáze rozlišuje malá a velká písmena, ukládejte důsledně malá písmena.

Případy použití UUID

Primární klíč databáze

Vložit uživatele s id UUID místo sekvenčního int — bezpečné pro veřejná rozhraní API bez výčtu.

ID korelace požadavku

Přidejte hlavičku X-Request-ID s čerstvým UUID na volání HTTP pro distribuované protokoly trasování.

Předpona klíče objektu S3

uploads/{uuid}/photo.jpg zabraňuje kolizím souborů ve sdílených bucketech.

Když UUID v4 vyhovuje

Když ID musí být jedinečné napříč distribuovanými systémy bez koordinace.
Při veřejném odhalení ID — náhodné UUID odolávají hádání.
Při slučování dat z offline klientů bez konfliktů ID.

Kdy nepoužít UUID v4

Když záleží na sekvenčním lidsky čitelném pořadí (čísla faktur) — použijte sekvence.
Když fragmentace indexu na náhodném UUID PK poškozuje výkon DB ve velkém měřítku — zvažte UUID v7 nebo ULID.
Když potřebujete kompaktní URL — použijte krátké ID nebo nanoid.

Verze okusovat

Znak za třetím blokem pomlčky označuje verzi — 4 znamená náhodné UUID. Rychle ověřuje formát při kontrole kódu.

Indexování databáze

Náhodné UUID způsobují rozdělení stránek B-stromu oproti sekvenčním ints — přijatelné až do miliard řádků; vložka monitoru výkon.

UUID v URL

V pořádku pro soukromé zdroje; v kombinaci s auth. Při autorizaci se nespoléhejte pouze na utajení UUID.

Časté dotazy

UUID v4 vs v1?

v4 je náhodný; v1 obsahuje časové razítko a uzel odvozený od MAC — v4 je preferována pro soukromí.

Pravděpodobnost kolize?

Astronomicky nízká pro praktické účely — narozeninový paradox v měřítku aplikací irelevantní.

Velká nebo malá písmena?

RFC umožňuje obojí — vyberte jednu konvenci na projekt; Typ uuid Postgres se normalizuje.

Jsou nutné pomlčky?

Standardní formát obsahuje pomlčky; některé systémy přijímají 32 hexadecimálních znaků bez.

Kryptograficky bezpečné?

Pokud je k dispozici, používá prohlížeč CSPRNG — nikoli Math.random.

Kolik jich mohu vygenerovat?

Žádné praktické omezení lokálně — generujte jeden po druhém nebo v dávce pro uživatelské rozhraní.