--- aliases: - hash based tags: - зрелость/🌱 date: - - 2024-06-20 zero-link: - "[[00 Алгоритмы]]" parents: - "[[Шардирование в БД]]" linked: - "[[Directory Based Sharding]]" --- ![](Pasted%20image%2020240620220323.png) - Выбирается ключ шардирвоания в таблице - Ключ преобразуется с помощью хэш функции. F(key) -> shard_id - По хэшу определяется шард **Плюсы:** - Равномерное и алгоритмическое распределение. **Минусы:** - Добавление/удаление шарда всегда боль. Так как хэш функция начинает возвращать другие результаты даже для уже имеющихся данных. Популярные формулы хэширования: - cc32 - какой-то мур-мур