2011-12-09 26 views
6

Zacząłem używać MongoDB kilka dni temu i mam problem ze zrozumieniem architektury niektórych baz danych. Jeśli wykonuję zapytanie db.stats(); Mam rozmiar pliku, datasize, storagesize & indexsize. Chociaż jestem surfowania i okazało się, że następujące:Co to jest plik filesize i datasize w MongoDB?

Storagesize = datasize + wolna przestrzeń przeznaczona na zbiórki

datasize = rozmiaru bazy danych wykorzystywanej przez MongoDB

Tutaj nie mogłem zrozumieć representaion o rozmiar pliku & datasize reprsentation. Dla datasize -> indeks jest również uwzględniany ?. Proszę podać dokładne rozwiązanie dla określonych atrybutów i proszę poprawić mnie, jeśli wspomniałem coś źle.

Advance Dzięki

Odpowiedz

16
  • datasize: Suma wszystkich danych rzeczywistych (obiekty BSON) używanych przez bazę danych, w bajtach
  • indexSize: Suma wszystkich indeksów używanych przez bazę danych, w bajtach
  • storageSize: dataSize plus wszystkie uprzednio przydzielone miejsce do gromadzenia, w bajtach
  • fileSize: Suma rozmiarów wszystkich plików przydzielonych dla tej bazy danych (np. test.0 + test.1 itd.), w bajtach
  • nsSizeMB: Rozmiar plik przestrzeni nazw dla tej bazy danych, w megabajtach.
  • avgObjSize: Średnia wielkość obiektów dokumentu w bazie danych. Ta wartość obejmuje dopełnienie i dlatego może nie ulec zmianie po zmniejszeniu rozmiaru dokumentów.
+1

Witam @Remon van Vilet, Dziękujemy za cenne informacje. – user626206

1

Jak wyjaśniono w this post temat różnych wskaźników wydajności MongoDB należy monitorować (z MMAPv1), tutaj są wszystkie metryki rozmiarem pamięci zwracane przez dbStats że należy śledzić:

  • dataSize środki przestrzeń zajmowana przez wszystkie dokumenty i dopełnienie w bazie danych. Z powodu dopełnienia, dataSize zmniejsza się, jeśli dokumenty są usuwane, ale nie, gdy zmniejszają się lub zwiększają po aktualizacji - te operacje po prostu dodają lub pożyczają od dopełnienia dokumentu.
  • indexSize zwraca rozmiar wszystkich indeksów utworzonych w bazie danych.
  • mierzy rozmiar wszystkich zakresów danych w bazie danych. Z MMAPv1, zawsze jest większy lub równy dataSize, ponieważ zakresy zawierają wolną przestrzeń, która nie jest jeszcze używana lub jest usuwana przez usunięte i przeniesione dokumenty. storageSize nie ma wpływu na dokumenty zmniejszane lub przenoszone.
  • fileSize odpowiada rozmiarowi plików danych. Jest to oczywiście zawsze większe niż storageSize i może być postrzegane jako ślad przechowywania bazy danych na dysku. Zmniejsza się tylko w przypadku usunięcia bazy danych i nie ma wpływu na kolekcje, dokumenty lub indeksy.

Oto wykres z różnych ważnych metryk przechowywania zwróconych przez dbStats: dbStats storage metrics for MongoDB UWAGA: Z silnikiem przechowywania MMAPv1, MongoDB wstępnie przydziela dodatkową przestrzeń na dysku do dokumentów tak skuteczny w miejscu możliwe są aktualizacje ponieważ dokumenty mają miejsce, by rosnąć bez konieczności przenoszenia. Ta dodatkowa przestrzeń nazywa się padding.