Online ULID generator, supports batch generation of ULIDs, and the generated ULIDs can be downloaded locally.
ULID stands for Universally Unique Lexicographically Sortable Identifier, which represents a universally unique dictionary sorting identifier. ULID is a novel unique identifier format proposed by Alizain Feerasta in 2016, which provides a sortable feature while maintaining uniqueness. ULID aims to address issues with UUIDs in certain scenarios and provide additional advantages. This makes ULID very useful in scenarios where sorting is required while maintaining global uniqueness, For example, in distributed systems, it is used for log sorting, database primary keys, etc. ULID consists of 128 bits and is typically represented as a 26 character string (or a 32 hexadecimal character string), with the first 48 bits being timestamp information, The last 80 bits are random sequences. This design not only ensures high uniqueness of ULID globally, but also enables efficient lexicographic sorting based on the generated chronological order.
-
The design features of ULID are as follows:
- 128-bit compatibility with UUID.
- 1.21e+24 unique ULIDs per millisecond.
- Lexicographically sortable.
- Canonically encoded as a 26 character string, as opposed to the 36 character UUID.
- Uses Crockford's base32 for better efficiency and readability (5 bits per character).
- Case insensitive.
- No special characters (URL safe).
- Monotonic sort order (correctly detects and handles the same millisecond).
- Count : The number of generated results, with a range of [1,1000000].
- Join : Select how to concatenate multiple string results together. This tool supports connection methods such as line breaks, commas, customization, JSON, etc.
- Seed Time : UNIX-time in milliseconds, positive. Won't run out of space 'til the year 10889 AD.
- Monotonic : When generating a ULID within the same millisecond, we can provide some guarantees regarding sort order. Namely, if the same millisecond is detected, the random component is incremented by 1 bit in the least significant bit position (with carrying).
- The encoding of the downloaded file is UTF-8.