Что такое кэш запросов MySQL и когда его следует внедрять?

Что такое кэш запросов MySQL и когда его следует внедрять?

На нашем текущем сервере MySQL кэширование запросов включено.

Qchache_hits: 31913 
Qchache_inserts: 50959
Qchache_lowmem_prunes: 9320
Qchache_not_chached: 209320
Qchache_queries_in_chace: 986

com_update: 0
com_delete: 0
com_Select: 10

Я не до конца понимаю кэш запросов. Сейчас я читаю о нем и пытаюсь разобраться.

В нашей базе данных хранятся данные о запасах, данные о клиентах, данные о сотрудниках, данные о продажах и т. д. Запрос очень редко выполняется более одного раза. Возможность того, что запрос будет выполнен дважды, означает просмотр определенной информации о продажах дважды. Но в основном все в нашей системе постоянно меняется. Она постоянно обновляется, удаляется, вставляется, и навскидку я не могу представить себе пользователей, запускающих один и тот же запрос дважды в течение недели.

Нужно ли вообще включать кэш запросов? Я предполагаю, что вставки означают, что было добавлено 51 тыс. записей, но только 986 ​​из них хранятся?

Будет ли хорошей идеей обновить кэш и понаблюдать за ним в течение недели, чтобы проверить, сколько запросов в кэше выполняется, например, еженедельно, чтобы увидеть, действительно ли это дает какие-либо преимущества?

Любая помощь/руководство по этому вопросу приветствуется, спасибо

решение1

Да, было добавлено 51 тыс. записей, сейчас там только 986. Таким образом, было около 50 тыс. записей, которые были добавлены в кэш, но больше там нет, 9 тыс. из них потому, что закончилась память в кэше, а остальные потому, что вставки/обновления сделали записи кэша недействительными. Com_select — это параметр, который полезно знать, когда пытаешься решить, получаете ли вы выгоду. Но на самом деле это зависит в основном от того, какие запросы кэшируются.

Если вы запускаете оператор select, который, как вы уверены, не выиграет от кэширования, вы можете добавить SQL_NO_CACHE к оператору select, см.документация здесь.

Я рекомендую прочитатьЭта статья(и этот блог в целом).

Связанный контент