Я читаю это:
https://instagram -engineering.com / шардинге Идентификаторы-на-Instagram-1cf5a71e5a5c
В последнем разделе «Решение», где они генерируют глобально уникальный идентификатор на основе функции автоинкремента БД + миллисекунды с начала эпохи + идентификатор шарда.
Зачем нам нужно добавлять к нему ID шарда?
В частности, это говорит
Далее мы берем ID осколка для этого конкретного фрагмента данных, который мы
пытаюсь вставить. Допустим, мы шардируем по идентификатору пользователя, и есть
2000 логических осколков; если наш идентификатор пользователя 31341, то идентификатор шарда
31341% 2000 -> 1341. Мы заполняем следующие 13 битов этим значением
Это не имеет смысла: если вы уже изменяете идентификатор пользователя по количеству шардов (31341% 2000), это означает: 1) У вас уже есть идентификатор пользователя! 2) Вы уже знаете шард, которому он принадлежит, с помощью функции мода!
Что я тут недопонимаю?