24 lines
1.3 KiB
Markdown
24 lines
1.3 KiB
Markdown
---
|
||
aliases:
|
||
tags:
|
||
- зрелость/🌱
|
||
date:
|
||
- - 2024-07-13
|
||
zero-link:
|
||
- "[[00 Базы Данных]]"
|
||
parents:
|
||
- "[[Шардирование в БД]]"
|
||
linked:
|
||
---
|
||
При добавлении/удалении ноды необходимо провести решардинг. То есть перенести старые данные на новые узлы, чтобы распределить данные по новому.
|
||
|
||
Кого задевает процесс решардинга:
|
||
- Клиентов, так как в момент решардинга могут возникать ошибки из-за не консистентности данных
|
||
- Сеть, так как по сети передаются данные из одного шарда в другой
|
||
|
||
Лучше если количество нод будет равно степени 2 (2,4,8). Формула shard_Id % count.
|
||
- 16 записей на 8 шардов -> 2 записи на шард
|
||
- 16 записей на 16 шардов -> 1 запись на шард
|
||
|
||
## Заметки
|
||
- Что если не переносить записи сразу, а сначала обращаться по новому значению хэш функции, а потом по старому. Таким образом можно в фоне мигрировать данные. |