sql >> Database >  >> NoSQL >> MongoDB

Kan MongoDB werken als de database groter is dan RAM?

Ja het kan werken. Op welk niveau het zal presteren is meer een "Het hangt ervan af"

Het belangrijkste is om ervoor te zorgen dat uw werkset kan in RAM passen. Dus als je bijvoorbeeld 16 GB RAM en een database van 20 GB (incl. indexen) hebt, als je maar de helft van alle gegevens nodig hebt, omdat de andere helft ouder is/nooit opgevraagd, dan komt het goed, want slechts de helft van je database moet in RAM (10GB) zitten.

Werkset staat hierbij centraal. Als u bijvoorbeeld een logboektoepassing heeft die naar MongoDB uitvoert, kan het zijn dat uw werkset de hoeveelheid gegevens (en indexen) van de afgelopen 3 maanden is en dat u geen toegang heeft tot alle gegevens daarvoor.

Wanneer uw werkset de hoeveelheid RAM overschrijdt, blijft het werken, maar met merkbaar verslechterde prestaties, omdat dingen dan constant naar de schijf moeten gaan die veel minder presteert. Als u zich in deze situatie bevindt waarin u de RAM-beperkingen op een machine overschrijdt, dan is dit waar sharding in het spel komt - zodat u de gegevens over een aantal machines kunt verdelen, waardoor de hoeveelheid gegevens die in het RAM kan worden bewaard, toeneemt.



  1. Redis gebruiken voor wachtrijen voor meerdere Laravel-applicaties op een enkele server

  2. Maak een notitie-app voor Android met MongoDB Stitch

  3. updateMany gebaseerd op ander veld in mongodb

  4. Waarom deze update-query slechts één record één keer bijwerkt?