Назад | Перейти на главную страницу

Для производительности MySQL, при прочих равных, имеет ли большее значение производительность однопоточного процессора или общая производительность?

Скажем, у меня есть два сервера, оба с одним и тем же жестким диском RAID 10 SSD, 128 ГБ оперативной памяти и т. Д. Я пытаюсь выяснить, какой сервер получить. Существует значительная разница в цене между этими двумя последующими установками, и я не хочу платить примерно вдвое дороже за ресурсы, которые не могут использоваться MySQL или технически означало бы понижение версии?

Сервер 1: Однопроцессорный Intel Xeon E3-1270 v3 @ 3,50 ГГц с оценкой Single Thread PassMark 2212

vs.

Сервер 2: Четырехъядерный Intel Xeon E5-4650 @ 2,70 ГГц с оценкой Single Thread PassMark 1483

Теперь 4650 значительно дороже ЦП, потому что это четырехъядерный процессор Octocore по сравнению с 1270, который является одноядерным четырехъядерным процессором. Моя интуиция подсказывает мне, что Сервер 2 намного мощнее, но если посмотреть на производительность одного потока, Сервер 1 на самом деле значительно лучше.

Это заставляет меня задуматься, для производительности MySQL я должен смотреть только на однопоточную производительность, т.е. выбрали Сервер 1 как беспроигрышный вариант? Или я неправильно смотрю на это?

РЕДАКТИРОВАТЬ: Дополнительная информация (равная для Сервера 1 и 2)

1) CentOS 7 64 бит

2) Одна очень большая БД

3) База данных - это почти исключительно MyISAM

Вы задаете очень сложный вопрос. Зачем ?

Вы не неправильно смотрите на это. Я бы хотел, чтобы больше людей задавали такие вопросы.

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

Я писал об этом много лет назад, цитируя MySQL Performance Blog

Percona провела полное сравнение, как вы сформулировали, при прочих равных. Это касается аппаратного обеспечения и конфигурации my.cnf.

MySQL 4.1 и MySQL 5.1 с подключаемым модулем InnoDB (MySQL 5.1.38 представил подключаемый модуль InnoDB (см. Документация MySQL 5.1 под названием The InnoDB Storage Engine под заголовком Additional Resources)) кажется быстрее, чем более новые версии MySQL «при прочих равных».

Когда дело доходит до «при всех равных условиях» и поиска максимально возможной производительности, все, что вам действительно остается, - это масштабирование оборудования (добавление дополнительных процессоров, добавление оперативной памяти, улучшение диска и т. Д.). Использование более старых версий MySQL, вероятно, немного поможет, но вы зависите от ошибок, которые все еще есть в старых версиях MySQL.

Пока ничего не меняя, просто перейдите на Сервер 1.

Если вы решите установить больше процессоров, обновите MySQL. Вы должны правильно настроить MySQL для использования InnoDB.