MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

comment libérer la mise en cache utilisée par Mongodb ?

MongoDB va (du moins sembler) utiliser beaucoup de mémoire disponible, mais il laisse en fait au VMM du système d'exploitation de lui dire de libérer la mémoire (voir Mise en cache dans la documentation de MongoDB.)

Vous devriez pouvoir libérer toute la mémoire en redémarrant MongoDB.

Cependant, dans une certaine mesure, MongoDB n'utilise pas vraiment la mémoire.

Par exemple, à partir de la documentation MongoDB Vérification de l'utilisation de la mémoire du serveur ...

Selon la plate-forme, vous pouvez voir les fichiers mappés comme de la mémoire dans le processus, mais ce n'est pas strictement correct. Unix top peut montrer beaucoup plus de mémoire pour mongod que ce qui est vraiment approprié. Le système d'exploitation (plus précisément le gestionnaire de mémoire virtuelle, selon le système d'exploitation) gère la mémoire où résident les "fichiers mappés en mémoire". Ce numéro est généralement affiché dans un programme comme "free -lmt".

C'est ce qu'on appelle la mémoire "cachée".

MongoDB utilise l'algorithme de cache LRU (Least Récemment Utilisé) pour déterminer quelles "pages" publier, vous trouverez quelques informations supplémentaires dans ces deux questions...

  • MongoDB limite la mémoire
  • Relation index MongoDB/RAM
  • Mongod commence avec une limite de mémoire (vous ne pouvez pas .)