Удалить все записи старше 15 минут

У меня есть таблица, которая получает около 10-15 тысяч записей в минуту. Каждый из них отмечен текущей меткой времени при входе. Таблица представляет собой таблицу MEMORY , поскольку потеря данных не является проблемой.

Каждую минуту у меня есть сценарий, который запускает следующий запрос:

DELETE FROM tracker WHERE post_time < DATE_SUB(NOW(), INTERVAL 15 MINUTE)

Этот запрос занимает около 1-2 секунд. run, что неплохо, но похоже, что этот тип запроса (удаление всего, что старше, чем X ) должен работать намного быстрее при запуске с таблицей MEMORY . У него также есть соответствующий всплеск для ЦП, который каждую минуту торчит, как больной палец.

Могу ли я сделать какие-либо оптимизации, чтобы выполнить этот запрос более эффективно?

7
задан Flimzy 10 July 2011 в 13:00
поделиться