Reactda noyob id larni muhokama qilish
Siz allaqachon bilasizki, ob'ektlar massivida
noyob id bo'lishi kerak. Keling,
ular qayerdan kelishini tushunib olaylik.
Ob'ektlar massivlari ikkita kelib chiqishga ega bo'lishi mumkin: ular bizga server tomonidan yuborilgan yoki mijoz tomonda (ya'ni brauzerda) yaratilgan.
Bizga server tomonidan yuborilgan ma'lumotlar, odatda, u erda ma'lumotlar bazasida saqlangan. Ma'lumotlar bazalari (MB) SQL (masalan, mySQL, PostgreSQL) yoki NoSQL (masalan, MongoDB) turlarida bo'ladi.
SQL ma'lumotlar bazalari, odatda, raqamli
id ga ega bo'lib, ular ma'lumotlar bazasi
tomonidan avtomatik ravishda o'sish tartibida joylashtiriladi.
NoSQL ma'lumotlar bazalari, odatda, id ga ega bo'lib,
ular tasodifiy noyob satrlar sifatida taqdim etiladi.
Bu satrlar ikkita element massivida mos kelmasligi
(collisions) taxmin qilinadi.
id ning noyobligi tasodifiy satrlarning
etarlicha uzunligi hisobiga erishiladi
- shu qadar uzunki, ikkita satrning mos kelish ehtimoli
nolga yaqin bo'ladi.
Shu bilan birga, MB qancha ko'p ma'lumotga ega bo'lsa, collision ehtimoli shunchalik yuqori bo'ladi. Dasturchining vazifasi ma'lumotlar hajmini oldindan hisoblab chiqish va optimal tasodifiy satr uzunligini aniqlashdir, shunda collision ehtimoli minimal bo'ladi (qabul qilinadigan deb hisoblash uchun etarlicha kichik).