Hansı UUID versiyasından istifadə etməliyəm?+−
Əksər ümumi məqsədli ID-lər üçün v4 istifadə edin - təsadüfidir və heç bir məlumat daşımır. UUID verilənlər bazasının əsas açarı və ya indeksi olacaqsa, adətən v7 daha yaxşıdır, çünki o, xronoloji sıralanır və bu, indeksləri sürətli saxlayır. Eyni girişin (məsələn, URL və ya ad) həmişə eyni UUID-ni verməsini istədikdə v5 istifadə edin; v1-i yalnız ID-yə daxili zaman damğası lazım olduqda istifadə edin və bunun yaradılma vaxtını üzə çıxara biləcəyini nəzərə alın.
v3 ilə v5 arasındakı fərq nədir?+−
Hər ikisi deterministikdir: eyni ad sahəsi və ad verildikdə, həmişə eyni UUID-ni yaradırlar. Yeganə fərq hash funksiyasıdır - v3, MD5 istifadə edir, v5 SHA-1 istifadə edir. MD5 kriptoqrafik olaraq sındığından, hər hansı yeni sistem üçün tövsiyə olunan seçim v5-dir; v3 əsasən köhnə sistemlərlə uyğunluq üçün mövcuddur.
v7 nə üçün xronoloji sıralanır?+−
v7 UUID-si təsadüfi bitlərdən əvvəl 48 bitlik Unix millisaniyə zaman damğası ilə başlayır, buna görə UUID-lər sadə sətir (və ya bayt) kimi müqayisə edildikdə, daha əvvəl yaradılanlar sonra yaradılanlardan əvvəl sıralanır. Təsadüfi v4 UUID-lərində belə bir struktur yoxdur, bu da verilənlər bazası indekslərinin parçalanmasına səbəb ola bilər, çünki yeni təsadüfi dəyərlər sonda deyil, bütün açar aralığında daxil edilir.
Burada yaradılan UUID-lər kriptoqrafik olaraq təsadüfidirmi?+−
Bəli. v4 və v1 ilə v7-nin təsadüfi hissələri Math.random() əvəzinə brauzerinizə quraşdırılmış kriptoqrafik cəhətdən təhlükəsiz təsadüfi ədəd generatoru olan Web Crypto API-nin crypto.getRandomValues funksiyasından istifadə edir. Heç nə serverdə yaradılmır və ya heç yerə göndərilmir.
İki təsadüfi v4 UUID-nin toqquşma ehtimalı nə qədərdir?+−
Astronomik dərəcədə aşağıdır. Bir v4 UUID 122 təsadüfi bitə malikdir (6 bit versiya və variantı göstərmək üçün sabitdir), bu da təxminən 5,3 x 10^36 mümkün dəyər verir. 100 il ərzində saniyədə bir milyard UUID yaradılsa belə, hər hansı bir toqquşma ehtimalı yenə də milyardda birdən az olacaq - buna görə də v4 mərkəzi reyestrə ehtiyac olmadan etibarlı unikal identifikator kimi qəbul edilir.
UUID ilə GUID eyni şeydirmi?+−
Praktikada bəli - GUID (Qlobal Unikal İdentifikator) Microsoft-un UUID standartında (RFC 4122) müəyyən edilən eyni 128 bitlik identifikator formatına verdiyi addır. Bəzi mühitlər onu böyük hərflərlə və ya fiqurlu mötərizələr ({...}) içində yazır, lakin əsas dəyər və struktur eynidir, ona görə də burada yaradılan UUID eyni zamanda etibarlı bir GUID-dir.