MySQL кеширование отдельных таблиц - PullRequest
3 голосов
/ 20 октября 2011

Я попадаю в довольно статичную таблицу с кучей простых запросов SELECT.
Чтобы повысить производительность, я планирую написать для этих данных свой собственный кэш памяти .как делать грязные дела БД.

Существует ли такая вещь, как механизм детального кэширования для конкретной таблицы?

Ответы [ 3 ]

5 голосов
/ 20 октября 2011

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

Вот несколько ссылок, которые помогут вам приступить к настройке:

http://www.debianhelp.co.uk/mysqlperformance.htm
http://www.mysqlperformanceblog.com/2006/09/29/what-to-tune-in-mysql-server-after-installation/

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

0 голосов
/ 20 октября 2011

Вы можете попробовать скопировать вашу статическую таблицу ISAM во временную таблицу, которая по определению является резидентной. OTOH, мне кажется, что таблица уже кэширована, так что это может не сильно помочь. Как насчет показа нам вашего запроса?

0 голосов
/ 20 октября 2011

Есть база данных памяти (например, innodb).Вы выбираете это во время создания таблицы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...