count
giver et estimeret antal og er muligvis ikke nøjagtigt. Brug countDocuments
for at få en nøjagtig optælling.
Du kan læse kilden til getShardDistribution
ved at skrive db.users.getShardDistribution
i skallen. Det ser ud til at bruge information gemt i konfigurationsdatabasen.
Det er ganske rimeligt at forvente, at statistikken gemt af databasen er ikke helt nøjagtige. Dette skyldes, at det koster at have dem opdateret, når der udføres en operation hvor som helst i klyngen.
Du ser ud til at se på statistik på et tidspunkt, efter at nogle bidder er blevet kopieret fra et skår til et andet, og før disse bidder er fjernet fra det originale skår. I denne situation lagres data to gange i klyngen. Statistikken er ikke korrekt i dette tilfælde. For at opnå en nøjagtig optælling skal du bruge countDocuments
.