Улучшения производительности базы данных для текущей настройки.(mysql - marriaDB) - PullRequest
0 голосов
/ 21 сентября 2018

В настоящее время у меня есть довольно здоровенная база данных (для меня в любом случае) с несколькими таблицами, превышающими 15 миллионов строк.Я пытаюсь улучшить производительность поиска по всей таблице, я внедрил memcached для кэширования уже проанализированного результата, но начальные поиски очень медленные.20 секунд + для большого запроса.

SELECT `something`, ROUND(SUM( ( `amount` / `something_of_value` ) * `column` ) WHERE ... (the where clause is huge based on many conditionals) Текущая настройка:

Управляемый VPS-сервер

InnoDB для хранения больших таблиц

10.0.36-MariaDB

ОЗУ 18 ГБ

8 x 2,40 ГГц ЦП.

мы не используем query_cache, потому что 25% запросов являются запросами на запись, а посленекоторые исследования, если запрос на запись / обновление выполнен - ​​кеш удаляется.Это правильный подход?

Каков наилучший способ улучшить начальный поиск без обновления аппаратного обеспечения?Я, вероятно, пропустил много важных деталей, поэтому, если вам нужна дополнительная информация, просто спросите.Если вы можете направить меня в хорошем общем направлении, это также будет оценено.Я знаю об оптимизации запросов, но мы пытаемся улучшить время поиска и производительность MySQL.

...