diff --git a/_inbox/Consistent hashing.md b/_inbox/Consistent hashing.md index e461d62a..e8cfb3f5 100644 --- a/_inbox/Consistent hashing.md +++ b/_inbox/Consistent hashing.md @@ -10,15 +10,15 @@ parents: - "[[Шардирование в БД]]" linked: --- -Рисуется круг. Обычно значения на круге это целые числа от 0 до 32 или от -32 до 32. Хэшфункция указывает место на круге. Хэш-функция используется для определения места узлов на круге. Этаже хэш функция должна использоваться для определения значения ключей на круге. Выбирается ближайший по частовой стрелке узел. +Представим, что весь диапазон нашей хэш функции можно отобразить на окружности (0 до 32 или от -32 до 32). Хэшфункция указывает место на круге. Хэш-функция используется для определения места узлов на круге. Этаже хэш функция используется для определения значения ключей на круге. Выбирается ближайший по часовой стрелке узел. -Плюсы: -- При добавлении/удалении затрагивается только часть данных +**Плюсы:** +- При добавлении/удалении шардов затрагивается только часть данных. -Минусы: -- Данные могут быть распределенны не равномерно, если между шардами будет различное расстояние на круге. +**Минусы:** +- Данные могут быть распределены не равномерно, если между шардами будет различное расстояние на круге. ## Virtual Nodes (Bucket) -Можно попытаться решить проблему неравноморного распределения. Для этого мы добавим виртуальные шарды: для одной ноды высчитывается несколько точек на круге. +Можно попытаться решить проблему неравноморного распределения. Для этого мы добавим виртуальные шарды: для одной ноды определяется несколько точек на круге. Такой подход используется в [Cassandra](Cassandra.md) \ No newline at end of file