Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Explique esse padrão de consumo de memória no Amazon RDS/Mysql?


O MySQL mantém um cache de tabelas, consultas e resultados usados ​​recentemente na memória, a fim de retornar resultados mais rápidos. Por exemplo, se você consultar "select * from company where id =1" de um cliente 1 milhão de vezes, apenas a primeira consulta precisa ir para o disco, as próximas 999.999 virão direto do cache da RAM. Não há razão para o MySQL expirar este cache até que ele saiba que precisa de mais memória, então ele mantém as coisas salvas até que precise liberar RAM para outro trabalho ou resultados usados ​​com mais frequência.

Não afirmo ser um especialista - entendo a otimização do cache de consulta do banco de dados como uma ciência muito complexa e profunda. Os programadores da Oracle, Microsoft e outros passaram anos e anos trabalhando na melhor maneira de gerenciar o espaço de cache, por isso é difícil prever de fora.