Mysql
 sql >> Base de données >  >> RDS >> Mysql

Expliquez ce modèle de consommation de mémoire dans Amazon RDS/Mysql ?

MySQL conserve en mémoire un cache des tables, requêtes et résultats récemment utilisés, afin de renvoyer des résultats plus rapidement. Par exemple, si vous interrogez "select * from company where id =1" d'un client 1 million de fois, seule la première requête doit aller sur le disque, les 999 999 suivantes proviendront directement du cache RAM. Il n'y a aucune raison pour que MySQL expire ce cache jusqu'à ce qu'il sache qu'il a besoin de plus de mémoire, il conserve donc les choses enregistrées jusqu'à ce qu'il ait besoin de libérer de la RAM pour d'autres travaux ou des résultats plus fréquemment utilisés.

Je ne prétends pas être un expert - je comprends que l'optimisation du cache des requêtes DB est une science très complexe et profonde. Les programmeurs d'Oracle, de Microsoft et d'autres ont passé des années et des années à trouver la meilleure façon de gérer l'espace de cache, il est donc difficile de prédire de l'extérieur.