- Hjem
- UUID-generator
UUID-generator
Generer universelt unike identifikatorer (UUID-er) ved hjelp av tidsstempelbaserte algoritmer for å forhindre duplikater.
Slik fungerer UUID-er
UUID v1 (tidsstempelbasert): Bruker det nåværende tidsstempelet (100-nanosekunds intervaller siden 15. oktober 1582) kombinert med en MAC-adresse eller tilfeldig nodeidentifikator. Dette sikrer unikhet på tvers av forskjellige maskiner og forhindrer duplikater selv ved samtidig generering.
UUID v4 (tilfeldig): Bruker kryptografisk sterke tilfeldige tall. Selv om duplikater teoretisk er mulige, er sannsynligheten så lav (1 av 2^122) at den er ubetydelig for praktiske formål.
UUID v7 (moderne tidsstempel): Den nyeste UUID-versjonen som kombinerer et Unix-tidsstempel (48 biter) med tilfeldige data (74 biter). Dette gir tidssorteringsfordelene fra v1 samtidig som personvernet fra v4 opprettholdes, noe som gjør den ideell for database-primærnøkler.
Format: UUID-er er 128-biters verdier vist som 32 heksadesimale sifre i formatet: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Vanlige bruksområder
UUID-er (også kjent som GUID-er) gir deg en praktisk talt ubegrenset pool av unike identifikatorer uten at du må koordinere med en sentral myndighet. Noen steder de ofte brukes:
Primærnøkler i databaser
UUID-er lar flere tjenester eller shards generere nøkler uavhengig av hverandre uten kollisjoner. UUID v7 foretrekkes stadig oftere fordi den innledende tidsstempelet holder innsettinger lokalt og indeksene kompakte.
Distribuerte systemer
Når hendelser produseres av mange noder, unngår en UUID per hendelse flaskehalsen ved en sentralisert sekvens og holder loggene sporbare på tvers av tjenestegrensene.
Offentlige identifikatorer
En UUID v4 i en URL avslører ikke hvor mange poster som finnes, og den åpner ikke for opptellingsangrep slik et voksende heltall gjør.
Idempotensnøkler
Klienter genererer en UUID per forespørsel slik at serveren kan gjenkjenne nye forsøk og unngå å behandle samme handling to ganger.
Hvilken versjon bør du bruke?
- Bruk v4 hvis du vil ha enkel tilfeldighet uten ekstra egenskaper - det er det tryggeste standardvalget for de fleste applikasjoner.
- Bruk v7 hvis identifikatoren skal være en primærnøkkel i en database eller lagres i en indeks der innsettingsrekkefølgen har betydning. Det innebygde tidsstempelet gjør at rader klynges sammen og forbedrer skriveytelsen dramatisk i stor skala.
- Bruk v1 kun når du spesifikt trenger å utlede identifikatoren fra et tidsstempel og en nodeidentifikator. I moderne applikasjoner er v7 et bedre valg for samme bruksområde uten å lekke MAC-adressen.
Ofte stilte spørsmål
Hva er en UUID?
En UUID (universelt unik identifikator) er en 128-bits verdi, vanligvis skrevet som 32 heksadesimale sifre i formatet xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx. Ulike versjoner genererer verdien med ulike strategier (tilfeldig, tidsstempel eller begge).
Hva er forskjellen mellom UUID og GUID?
De viser til det samme. GUID (globalt unik identifikator) er navnet som brukes i Microsofts økosystem; UUID er navnet som brukes i RFC 4122 og overalt ellers. Formatet og unikhetsgarantiene er identiske.
Er UUID-er garantert unike?
Ikke matematisk garantert - men kollisjonssannsynligheten for UUID v4 er omtrent 1 av 2^122, som ligger langt under terskelen for enhver praktisk anvendelse. For UUID v1 og v7 hindrer tidsstempelet og node-/tilfeldighetsbitene kollisjoner i praksis.
Bør jeg bruke UUID v4 eller UUID v7 for primærnøkler i databaser?
UUID v7 er generelt bedre for primærnøkler. Siden de innledende bitene er et Unix-tidsstempel, havner nye rader nær hverandre på disk, noe som holder indekser kompakte og skrivingen rask. Bruk bare v4 når innsettingsrekkefølgen absolutt ikke skal kunne utledes.
Trenger jeg en UUID v1-generator?
Sjelden. UUID v1 inneholder MAC-adressen til den genererende maskinen (eller en tilfeldig erstatning), noe som kan lekke informasjon. UUID v7 tilbyr samme tidssorterbare egenskap uten den bekymringen, og er nesten alltid det bedre valget i dag.
Er denne UUID-generatoren gratis å bruke?
Ja. All generering skjer i nettleseren din, det er ingen hastighetsgrense, og ingen konto kreves. Du kan generere enkelt-UUID-er her eller bytte til masse-generatoren for opptil 500 om gangen.
Relaterte verktøy
Andre gratisverktøy fra Hexbon som kan være nyttige.