UUID / ULID / NanoID Үүсгэгч
UUID v4, UUID v7, ULID, болон NanoID утгуудыг өөрийн хөтөч дээрээ шууд үүсгээрэй.
Таны ID-нуудыг хөтчийн найдвартай санамсаргүй тоо үүсгэгчээр локал байдлаар үүсгэдэг. BroBroGo руу юу ч илгээгдэхгүй.
Түгээмэл асуултууд
UUID v4, UUID v7, ULID, болон NanoID хоорондоо ямар ялгаатай вэ?
UUID v4 нь танил 36 тэмдэгттэй форматаар 122 битийн цэвэр санамсаргүй байдлыг хангадаг боловч түүний санамсаргүй дараалал нь өгөгдлийн сангийн индексжүүлэлтэд тийм ч тохиромжтой биш байдаг. UUID v7 нь ижил хэлбэрийг хадгалахын зэрэгцээ эхэндээ миллисекундын хугацааны тэмдэгт (timestamp) агуулдаг тул ID-нууд үүсгэсэн цагаараа эрэмбэлэгддэг — энэ нь primary key-д маш тохиромжтой. ULID нь ижил хугацааны дарааллыг арай богино, том жижиг үсэг ялгадаггүй 26 тэмдэгттэй бичвэрээр шийддэг. NanoID нь эрэмбэлэлтийг алгасаж, илүү жижиг, бүрэн өөрчлөх боломжтой ID үүсгэдэг — та урт болон тэмдэгтийн багцыг өөрөө сонгох боломжтой.
Эдгээр ID-нууд тааварлах боломжгүй хэмжээний санамсаргүй байж чадах уу?
Тийм — ID бүрийг тааварлах боломжгүй, криптографын хувьд найдвартай хөтчийн санамсаргүй тоо үүсгэгчээр үүсгэдэг. UUID v4 болон NanoID-ийн анхдагч тэмдэгтүүд нь 100 гаруй битийн санамсаргүй байдлыг агуулдаг. UUID v7 болон ULID нь эдгээр битийн 48 орчмыг эхний хугацааны тэмдэгтэд зориулдаг тул хугацааны угтвартай форматуудыг нууц түлхүүр гэхээсээ илүү эрэмбэлэх боломжтой ID гэж үзэх нь зүйтэй.
Би NanoID-ийн урт болон тэмдэгтийн багцыг өөрчилж болох уу?
Тийм — NanoID руу шилжихэд энэ хэрэгсэл нь уртын гулсуур (анхдагчаар 21 тэмдэгт) болон засах боломжтой тэмдэгтийн талбарыг харуулна. Уртыг багасгах эсвэл тэмдэгтийн багцыг цөөлөх нь давхцах магадлалыг (collision) нэмэгдүүлдэг тул тэмдэгтийн багцыг цөөлсөн бол уртыг нь урт хэвээр үлдээхийг зөвлөж байна.