sql >> Database >  >> NoSQL >> MongoDB

Totale MongoDB-opslaggrootte

Het korte antwoord is:dat kan niet, niet uitsluitend gebaseerd op avg. documentgrootte (althans niet op een nauwkeurige manier).

Om uitgebreider uit te leggen:

De benodigde ruimte op de schijf is niet alleen een functie van de gemiddelde documentgrootte. Er is ook de ruimte die nodig is voor eventuele indexen die u maakt. Dan is er de ruimte die nodig is als u die bewegingen activeert (ondanks opvulling gebeurt dit wel) - die ruimte wordt op een lijst geplaatst om opnieuw te worden gebruikt, maar afhankelijk van de gegevens die u vervolgens invoert, kan het al dan niet mogelijk zijn om hergebruik die ruimte.

U kunt er ook aan toevoegen dat pre-toewijzing betekent dat af en toe een handvol documenten uw schijfruimtegebruik met ~ 2 GB zal verhogen als een nieuw gegevensbestand wordt toegewezen. Natuurlijk, met voldoende gegevens, zal dit in wezen een afrondingsfout zijn, maar het is de moeite waard om in gedachten te houden.

De enige manier om dit type gegevens/grootte-verhouding te schatten, uitgaande van een consistent gebruikspatroon, is om het in de loop van de tijd te trenden voor uw specifieke gebruiksgeval en het schijfruimtegebruik te volgen ten opzichte van de ingevoerde gegevens (het aantal documenten kan beter zijn dan het gegevensvolume afhankelijk van de variabiliteit van de documentgrootte).

Evenzo, als u de invoegsnelheid, de documentgrootte en de ruimte die is teruggewonnen door een hersynchronisatie/reparatie bijhoudt. Ter informatie:u kunt een secundaire opnieuw synchroniseren om een ​​"nieuwe" kopie van de gegevensbestanden te krijgen in plaats van een reparatie uit te voeren, wat minder storend kan zijn en minder ruimte kan gebruiken, afhankelijk van uw configuratie.




  1. Aangepaste velden retourneren in MongoDB

  2. Hoe wijzig je de gebruikersrechten van MongoDB?

  3. actiekabel lokaal abonneren, maar niet op heroku

  4. Hoe PyMongo gebruiken met Flask Blueprints?