Когда необходимо партиционирование и шардирование?

Мучает вопрос, по которому пока не нашел ответа: где граница того, что необходимо партиционирование и шардирование?
Допустим есть таблица Tickets, в котором около 12 полей
- 5 текстовых и 7 числовых. При достижении какого количества записей, необходимо горизонтальное масштабирование? Или при каком количестве записей, поиск будет проседать: 1 млн, 10 млн, 100 млн?
  • Вопрос задан
  • 134 просмотра
Пригласить эксперта
Ответы на вопрос 2
dimonchik2013
@dimonchik2013
non progredi est regredi
проблема в том, что проц и память о числе записей не знают, а вот о своей загрузке - знают

https://github.com/faker-ruby/faker

ты делай - проект взлетит - будешь решать: менять тип базы, например
Ответ написан
ky0
@ky0
Миллиардер, филантроп, патологический лгун
Эта граница у каждого случая своя и обычно она болтается где-то в районе момента, когда размер таблицы приводит к прикладным негативным последствиям для бизнеса.

В зависимости от нюансов конкретного проекта подходящий момент для масштабирования может наступить и на 10 миллионах записей. А может и вообще не наступить - а значит, страдания по этому поводу будут являться ярким примером преждевременной оптимизации (и таких случаев - большинство).

В грамотно спроектированной базе, к которой выполняются грамотно составленные запросы - момент приближения к "границе" не будет внезапным и заблаговременно будет отловлен DBA с помощью мониторинга.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы