ULID

From Just Solve the File Format Problem
Jump to: navigation, search
File Format
Name ULID
Ontology

ULID (Universally Unique Lexicographically Sortable Identifier) is an identifier that's intended to be used in a similar manner to the UUID, where unique identifiers are needed without a central authority to assign them, but unlike UUIDs, they sort properly in the order of creation, because the prefix portion identifies the timestamp (to the millisecond) that a ULID was created, and the rest of the identifier is assigned pseudorandomly, but when more than one ULID is generated in the same process in the same millisecond, successive values are used in order so that they sort properly.

String and binary representations are defined. String representations are encoded using a Base32 alphabet of 0123456789ABCDEFGHJKMNPQRSTVWXYZ, case-insensitively. String-based ULIDs are 26 characters long, with the first 10 encoding the timestamp (48-bit Unix time which will work until the year 10889) while binary ones are 16 bytes.

Sample ULID in string representation:

01AN4Z07BY79KA1307SR9X4MV3

Links

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox