Насколько накладные расходы на таблицу являются чрезмерными?
Вопрос
Я только что увидел в phpMyAdmin, что одна из наших таблиц MySQL имеет размер 14 МБ, но накладные расходы составляют 10 МБ.Я предполагаю, что это много!
Сколько - это слишком много?Должен ли я бежать OPTIMIZE TABLE
регулярно?
Решение
"Накладные расходы" - это еще не освобожденное пространство, ранее занимаемое удаленными записями.Если вы делаете много вставок / удалений, это почти всегда будет там.Ты можешь бежать OPTIMIZE TABLE
, но я бы не стал утруждать себя - особенно на больших столах (хотя 14 м и невелики), где это может занять много времени.
Другие советы
Чтобы привести в порядок таблицу данных, можно просто использовать:
ALTER TABLE table_name_here ORDER BY primary_key_here;
который мог бы работать быстрее, чем OPTIMIZE TABLE
.
Это приведет к де-фрагментации файла данных.После значительных изменений в таблице это также может повысить производительность инструкций, использующих таблицу, иногда значительно.