Горизонтальное и вертикальное шардирование

GuDron

dumpz.ws
Admin
Регистрация
28 Янв 2020
Сообщения
7,758
Реакции
1,450
Credits
25,277
Горизонтальное и вертикальное шардирование

Существует два высокоуровневых подхода:
Вертикальное шардирование: Разделение базы данных на колоночные таблицы или секции по сравнению со строками. Например, одна таблица для имен, другая - для электронной почты.
Горизонтальное разделение: Разделение базы данных на разделы строк, равномерно распределенные по нескольким серверам.

Некоторые методы горизонтального разделения:
1. На основе диапазона: Сегментирование строк на основе диапазона значений, например возрастных групп. Может привести к неравномерному распределению данных и появлению "горячих точек".
2. На основе каталога: Использование каталога для поиска строк. Обеспечивается гибкость, но возникает риск возникновения единой точки отказа.
3. На основе хеширования: Применение хэш-функций для равномерного распределения строк по хранилищам. Сложнее перебалансировать.
При разбиении на сегменты следует использовать самый простой подход, отвечающий требованиям, чтобы минимизировать сложность. Старайтесь избегать этого до тех пор, пока не возникнет необходимость.
photo_2024-04-08_14-51-53.jpg