Пожалуйста, предоставьте SHOW CREATE TABLE
. Если он, как вы намекнули, РАЗДЕЛЕН, то нам нужно учитывать это при анализе.
Как правило, если к «старым» строкам больше нет доступа, они не повредят, и вам не нужно будет делать то, что вы сделали. Уточните, пожалуйста, запросы, которые вы считаете "медленными", предпочтительно предоставив EXPLAIN SELECT
.
MyISAM кэширует индексные блоки в «key_buffer»; насколько велики индексы? Что установлено key_buffer_size
? Блоки данных кэшируются ОС.
Для системы вполне «нормально» иметь набор данных, во много раз превышающий объем оперативной памяти. Производительность зависит от «рабочего набора» набора данных и от того, насколько активно вы запрашиваете данные. Вы намекнули, что «старые» строки не используются и, следовательно, не являются частью «рабочего набора».
С другой стороны, если у вас есть «сканирование таблицы», вся таблица является частью рабочего набора. Вполне возможно, что мы можем посоветовать, как изменить эти запросы, чтобы они были более приятными.
person
Rick James
schedule
18.02.2015