關於

ULID全稱是Universally Unique Lexicographically Sortable Identifier(通用唯一詞典分類標識符)
什麼是ULID?
ULID(Universally Unique Lexicographically Sortable Identifier)是一種可排序、唯一的標識符,由Alizain Feerasta在2016年提出,它結合了時間戳和隨機數生成器來生成一個32位的標識符,適用於分佈式系統中標識數據實體和事件等場景。
為什麼要使用ULID?
ULID比UUID具有一些優勢:
  • 可排序性:由於ULID基於時間戳生成,因此可以按照時間戳進行排序,這對於資料庫索引和查詢非常有用。另外,由於ULID採用了基於時間戳記的前綴,因此可以使用前12個字元來確定時間戳,這使得偵錯和資料管理更加容易。
  • 可讀性:ULID是由32個字元組成的,其中前12個字元是由時間戳產生的,可以透過這12個字元來確定時間戳。這對於調試和數據管理非常有用。
  • 低碰撞率:ULID的碰撞率非常低,這是因為它採用了基於時間戳的前綴和隨機數產生器產生ULID,這使得生成的ULID在全球範圍內都是唯一的。
  • 短且輕量級:ULID只有32個字符,而UUID有36個字符,這意味著ULID更短、更輕量級,更適合在分散式系統中使用。
  • 安全性:ULID使用了基於CSPRNG的隨機數產生器來產生隨機數部分,這使得它更加安全,不容易受到攻擊。