Mongo = Größe eines einzelnen Dokuments ermitteln

Ich bin auf ein seltsames Verhalten von Mongo gestoßen und möchte es ein bisschen klarstellen ...
Meine Anfrage ist so einfach: Ich möchte eine Größe von einem einzelnen Dokument in der Sammlung erhalten. Ich habe zwei mögliche Lösungen gefunden:

Object.bsonsize - eine JavaScript-Methode, die eine Größe in Bytes zurückgeben solltedb.collection.stats () - Hier gibt es eine Zeile 'avgObjSize', die eine "aggregierte" (durchschnittliche) Größenansicht der Daten erzeugt. Es stellt einfach die durchschnittliche Größe eines einzelnen Dokuments dar.
Wenn ich eine Testsammlung mit nur einem Dokument erstelle, geben beide Funktionen unterschiedliche Werte zurück. Wie ist es möglich?
Gibt es eine andere Methode, um die Größe eines Mongo-Dokuments zu ermitteln?

Hier gebe ich Code an, mit dem ich Tests durchführe:

Ich habe eine neue Datenbank 'test' erstellt und ein einfaches Dokument mit nur einem Attribut eingegeben: Typ: "auto"

db.test.insert({type:"auto"})

Ausgabe von stats () Funktionsaufruf:db.test.stats ():

{ 
  "ns" : "test.test",
  "count" : 1,
  "size" : 40,
  "avgObjSize" : 40,
  "storageSize" : 4096,
  "numExtents" : 1,
  "nindexes" : 1,
  "lastExtentSize" : 4096,
  "paddingFactor" : 1,
  "systemFlags" : 1,
  "userFlags" : 0,
  "totalIndexSize" : 8176,
  "indexSizes" : {
        "_id_" : 8176
},
"ok" : 1

}

Ausgabe des Funktionsaufrufs bsonsize:Object.bsonsize (db.test.find ({test: "auto"}))

481

Antworten auf die Frage(3)

Ihre Antwort auf die Frage