Насколько большой может быть база данных MySQL до того, как производительность начнет снижаться - PullRequest
276 голосов
/ 04 августа 2008

В какой момент база данных MySQL начинает терять производительность?

  • Имеет ли значение физический размер базы данных?
  • Имеет ли значение количество записей?
  • Является ли снижение производительности линейным или экспоненциальным?

У меня есть, как мне кажется, большая база данных с примерно 15M записями, которые занимают почти 2 ГБ. Исходя из этих цифр, есть ли у меня какой-либо стимул для очистки данных или я могу позволить им продолжать масштабирование еще несколько лет?

Ответы [ 14 ]

4 голосов
/ 19 сентября 2013

Производительность может ухудшиться за несколько тысяч строк, если база данных не спроектирована должным образом.

Если у вас есть надлежащие индексы, используйте надлежащие механизмы (не используйте MyISAM, где ожидается несколько DML), используйте разделы, выделите правильную память в зависимости от использования и, конечно, имеете хорошую конфигурацию сервера, MySQL может обрабатывать данные даже в терабайтах !

Всегда есть способы улучшить производительность базы данных.

3 голосов
/ 29 ноября 2016

Это зависит от вашего запроса и проверки.

Например, я работал с таблицей из 100 000 лекарств, у которой есть общее имя столбца, где для каждого препарата в этой таблице содержится более 15 символов. Я поставил запрос для сравнения общего названия лекарств между двумя таблицами. Выполнение запроса занимает больше минут. То же самое, если вы сравниваете лекарства, используя индекс лекарства, используя столбец идентификатора (как сказано выше), это займет всего несколько секунд.

2 голосов
/ 05 июня 2017

Размер базы данных имеет значение с точки зрения байтов и количества строк таблицы. Вы заметите огромную разницу в производительности между легкой базой данных и блобом, заполненным. Однажды мое приложение застряло, потому что я помещал двоичные изображения в поля вместо того, чтобы хранить изображения в файлах на диске и помещать только имена файлов в базу данных. Итерация большого количества строк с другой стороны не бесплатна.

0 голосов
/ 25 мая 2019

Нет, это не имеет значения. Скорость MySQL составляет около 7 миллионов строк в секунду. Таким образом, вы можете масштабировать его немного

...