Обсуждение на уникални id в React
Както вече знаете, в масив от обекти трябва да
присъстват уникални id. Нека
разберем откъде идват те.
Масивите от обекти могат да имат два произхода: или са ни изпратени от сървъра, или са генерирани от клиента (тоест в браузъра).
Данните, изпратени ни от сървъра, обикновено са се съхранявали там в база данни. Базите данни (БД) могат да бъдат от вида SQL (например, mySQL, PostgreSQL) или NoSQL (например, MongoDB).
SQL базите данни обикновено имат числови
id, които автоматично се поставят от базата
данни във възходящ ред.
NoSQL базите данни обикновено имат id,
които представляват случайни уникални
низове. Предполага се, че тези низове нямат
съвпадения (колизии) при два
елемента от масива.
Уникалността на id се постига чрез
достатъчно голяма дължина на случайните низове
- толкова голяма, че вероятността за съвпадение
на два низа да бъде близка до нула.
В същото време, колкото повече данни има в БД, толкова по-голяма е вероятността за колизия. Задачата на програмиста е предварително да прецени обема данни и да определи оптималната дължина на случайните низове, така че вероятността от колизии да е минимална (достатъчно малка, за да се счита за приемлива).