ULID – Universally Unique Lexicographically Sortable Identifier

image_pdfimage_print

Se você pensou que o UUID era o fim de identificadores universalmente exclusivos, pense novamente. Aqui está a especificação ULID, com os seguintes aprimoramentos:

  • Compatibilidade de 128 bits com o UUID
  • 1.21e + 24 ULIDs exclusivos por milissegundo
  • Lexicograficamente classificável!
  • Codificado Canonicamente como uma cadeia de 26 caracteres, em oposição ao UUID de 36 caracteres
  • Usa a base32 de Crockford para melhor eficiência e legibilidade (5 bits por caractere)
  • Caso insensível
  • Nenhum caractere especial (URL seguro)
  • Ordem de classificação monotônica (detecta e manipula corretamente o mesmo milissegundo)

Veja como fica:

ulid () // 01ARZ3NDEKTSV4RRFFQ69G5FAV

E há uma ampla seleção de bibliotecas que implementam o ULID para todas as principais linguagens de programação.

Gostou? Tire um minutinho e dê sua contribuição para Drall Dev Community no Patreon!