sql >> Databáze >  >> NoSQL >> MongoDB

Celková velikost úložiště MongoDB

Krátká odpověď zní:nemůžete, nejen na základě prům. velikost dokumentu (alespoň ne nějakým přesným způsobem).

Abych to vysvětlil podrobněji:

Potřebné místo na disku není pouze funkcí průměrné velikosti dokumentu. Je zde také prostor potřebný pro všechny indexy, které vytvoříte. Pak je tu prostor potřebný, pokud tyto pohyby spustíte (navzdory vyplnění se to stane) - toto místo je umístěno na seznam, který má být znovu použit, ale v závislosti na datech, která následně vložíte, může nebo nemusí být možné znovu použít tento prostor.

Můžete také přidat skutečnost, že předběžné přidělení bude znamenat, že příležitostně hrstka dokumentů zvýší využití místa na disku o ~2 GB, protože je přidělen nový datový soubor. Samozřejmě s dostatečným množstvím dat to bude v podstatě chyba zaokrouhlování, ale stojí za to to mít na paměti.

Jediným způsobem, jak odhadnout poměr tohoto typu dat k velikosti, za předpokladu konzistentního vzoru využití, je sledovat jej v průběhu času pro váš konkrétní případ použití a sledovat využití místa na disku v porovnání s vloženými daty (počet dokumentů může být lepší než objem dat v závislosti na variabilitě velikosti dokumentu).

Podobně, pokud sledujete rychlost vkládání, velikost dokumentu a prostor získaný zpět po opětovné synchronizaci/opravě. Pro informaci – sekundární můžete znovu synchronizovat od nuly, abyste získali „čerstvé“ kopie datových souborů, místo abyste spouštěli opravu, která může být méně rušivá a zabere méně místa v závislosti na vašem nastavení.




  1. Jak připojit Robomongo k MongoDB

  2. $lookup na ObjectId v poli

  3. nemůže získat přístup k vlastnostem req.user

  4. Potřebuji poradit s návrhem databáze v mongodb s mongoose