а что не так с шардированием по id/uuid?
А в каких ситуациях в этом есть смысл?
ну например.... вот у тебя есть "независимые" штуки. у каждой штуки свой айдишник. И их много и тебе надо скейлить именно запись. В этом случае ты можешь сделать несколько шард вместо одной базы и раскидывать по хэшу от айдишки.
Распределение по модулю будет ровнее, не?
ну модуль от хэша берется
Ну, теоретически согласен Но практически, настолько независимых штук не бывает/либо их шардят по конкретным параметрам
в пределах транзакции конкретной - более чем бывает
например. представь что у тебя игра. Каждый игрок чет делает и генерит достаточно много апдейтов в базу. И вот приходит момент когда 10К юзеров уже одна база не вывозит. И вот ты делаешь шарды и раскидываешь транзакции по разным нодам
Ну, да, хороший пример Но я же эту херню не буду шардить по ID. Мне это логичнее сделать, например по типу одной из систем в игре. Система рейтинга/Чат/Передвижение и тп
Такая же тема была для балансов в трейдинге. Рейт очень большой на запись
ну это уже не про шардирование, ты разделяешь базу.
представь что например для рейтингов и для чата все одна база вывозит, а для транзакций платежных или там еще какой херни - уже нет.
Обсуждают сегодня