2010-10-17 5 views
0

Возможно ли кэшировать недавно вставленные данные в базе данных MySQL внутри страны?
Я посмотрел на кеш запросов и т. Д. (Http://dev.mysql.com/doc/refman/5.1/en/query-cache.html), но это не то, что я ищу. Я знаю, что запрос «SELECT» будет кэшироваться.Как кэшировать последние вставленные данные в MySQL?

Подробности:
Я вставляю много данных в MySQL DB каждую секунду.
У меня есть два типа пользователей для этих Данных.

  1. Пользователей, которые запрашивают любые случайные данные
  2. пользователей, запрашивающие недавно вставленных данные

Для 2-го рода пользователей, моя таблица имеет первичный ключ, как Юниксовое время штамп, который говорит мне, как новые данные. Есть ли способ кэшировать данные во время ввода?

Один из вариантов - написать собственный модуль кэширования, который кэширует данные, а затем «ВСТАВИТЬ».
Пользователи могут запросить этот модуль перед переходом в MySQL DB.
Мне просто интересно, есть ли что-то подобное.

PS: Я открыт для других баз данных, предоставляющих аналогичную функцию.

ответ

0

Обычно вы получаете максимальную производительность от MySQL, если вы разрешаете большой кеш индекса (настройка конфигурации key_buffer_size), по крайней мере для таблиц MyISAM.

Если задержка является действительно проблемой (как кажется в вашем случае), посмотрите на Sphinx, который недавно представил индексы реального времени.

+0

Сфинкс определенно выглядит хорошо. Меня интересует наличие последних данных в кеше, поскольку я знаю, что для этого будет вопрос. индексный кеш будет полезен для быстрого получения данных. – Jack

Смежные вопросы