ULID: UUID ที่เรียงลำดับได้

ULID เสนอข้อดีของ UUID พร้อมการเรียงลำดับตามเวลาโดยไม่ต้องเสียความเป็นส่วนตัวของ UUID v1

ULID คืออะไร?

ULID (Universally Unique Lexicographically Sortable Identifier): ตัวระบุ 128 บิตเช่น UUID เข้ารหัสเป็น 26 อักขระ Crockford Base32 (ไม่ใช่ฐานสิบหก) รูปแบบ: 01ARZ3NDEKTSV4RRFFQ69G5FAV ส่วนประกอบ: 48 บิตแรกเป็น timestamp (millisecond) 80 บิตที่เหลือเป็นสุ่ม ข้อดีเทียบกับ UUID: เรียงลำดับได้ตามเวลา—สามารถเรียงตามตัวอักษร กะทัดรัด—26 อักขระ เทียบกับ 36 ของ UUID ไม่มีอักขระพิเศษ—ปลอดภัยสำหรับ URL ไม่เปิดเผยที่อยู่ MAC (เหมือน UUID v1) timestamp สามารถแยกได้

ULID กับ UUID

ใช้ ULID เมื่อ: คุณต้องการการเรียงลำดับตามเวลา ดัชนี B-tree สำคัญ (ULID หลีกเลี่ยงการแตกสลายของดัชนี) คุณต้องการตัวระบุที่กะทัดรัด คุณต้องการแยก timestamp ใช้ UUID เมื่อ: คุณต้องการมาตรฐาน (RFC 4122) ความเข้ากันได้สำคัญ (UUID ได้รับการสนับสนุนทุกที่) คุณต้องการตัวระบุที่กำหนดได้ (UUID v5) คุณไม่ต้องการเปิดเผยเวลาสร้างแม้จะเป็นคร่าวๆ ข้อเสีย ULID: มาตรฐานน้อยกว่า—การสนับสนุนฐานข้อมูลพื้นเมืองน้อยกว่า เปิดเผย timestamp (อาจเป็นความกังวลด้านความเป็นส่วนตัว) ยังคงค่อนข้างใหม่—ระบบนิเวศน้อยกว่า

ลองใช้เครื่องมือ

สร้าง UUID

สร้าง UUID

บทความที่เกี่ยวข้อง