Die Größe wurde mit db.getCollection(<col_name>).stats({}) ermittelt.
https://trello.com/c/99zDptSw/1509-mongodb-index-strategy
Das Problem taucht zB immer auf, wenn bestimmte osa queries schneller gemacht werden sollen. Kann ich für Feld x noch einen index auf Collection Y anlegen? oder einen compound index über mehrere Felder?
Mir persönlich ist oft nicht klar was die direkten Kosten eines Index sind. klar ist die Fautregel, dass nur indexe angelegt werden sollten, die für (frequente) queries verwendet werden. Was sind aber andere Dinge auf die es zu achten gilt? verlangsamt eine große Menge an indexen den Import neuer Dokumente? Gibt es Speicherbedenken? Laut der MongoDB Doku https://docs.mongodb.com/manual/applications/indexes/ gilt zB “Ensure Indexes Fit in RAM”. Wenn ich mir mittels db.getCollection('meta_db_collection').totalIndexSize() die metadb anschaue hat der Index dort eine größe von 4.5GB - gut. aber auf der gleichen maschine lebt auch die history collection mir einer indexgröße von 41GB, was deutlich zu viel erscheint. Lange Rede kurzer Sinn: wir brauchen Maßstäbe nach denen entschieden werden kann, ob bestimmte indexe existieren sollten oder nicht.