ULID-Generator

Gegenereerd in je browser, nooit naar een server gestuurd.

Wat is het ULID-Generator

Een ULID (Universally Unique Lexicographically Sortable Identifier) is een 128-bits ID geschreven als 26 tekens in Crockford Base32. De eerste 10 tekens coderen een tijdstempel in milliseconden en de laatste 16 zijn willekeurig, waardoor ULIDs zich als platte tekst op aanmaaktijd sorteren en toch wereldwijd uniek blijven. Deze generator maakt ze volledig in je browser via de Web Crypto API, zonder server.

Hoe te gebruiken

  1. Kies in het menu Aantal hoeveel ULIDs je wilt genereren.
  2. Klik op Genereren, of wijzig het aantal, om een nieuwe reeks te maken.
  3. Vink Monotoon aan om IDs die in dezelfde milliseconde ontstaan strikt op volgorde te houden.
  4. Klik op Kopiëren naast een ULID, of op Alles kopiëren voor de hele lijst.

Wanneer te gebruiken

Heb je databasesleutels nodig die op aanmaaktijd sorteren zonder aparte tijdstempelkolom? Genereer een reeks ULIDs en gebruik ze als primaire sleutel: omdat de tijdstempel in de eerste 10 tekens zit, geeft een gewone ORDER BY op de id de rijen van oud naar nieuw. Handig voor event-logs, bericht-IDs en overal waar je anders een UUID zou pakken maar ook natuurlijke sortering wilt.

Veelgestelde vragen

Wat is het verschil tussen een ULID en een UUID?

Beide zijn unieke 128-bits identifiers, maar een ULID is Base32 (26 tekens, hoofdletterongevoelig, URL-veilig) en de eerste bits vormen een tijdstempel, dus ULIDs sorteren als tekst chronologisch. Een UUID v4 is volledig willekeurig en heeft geen bruikbare volgorde.

Wat betekent monotoon hier?

Als er meerdere ULIDs in dezelfde milliseconde worden gemaakt, verhoogt de monotone modus het willekeurige deel in plaats van het opnieuw te trekken, zodat elke nieuwe ID strikt groter is dan de vorige. Laat het uit als je gewoon onafhankelijke willekeurige IDs wilt.

Worden deze ULIDs naar een server gestuurd?

Nee. Elke ULID wordt lokaal in je browser gegenereerd met de Web Crypto API. Er wordt niets geüpload, gelogd of verzonden.

Kan ik ULIDs als primaire sleutel gebruiken?

Ja. Ze passen in elke tekst- of 16-byte binaire kolom en worden ondersteund door libraries voor PostgreSQL, MySQL, MongoDB en de meeste talen. Hun tijdsordening beperkt ook indexfragmentatie vergeleken met willekeurige UUIDs.

Gerelateerde tools