MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Nombre incorrect de documents dans le cluster de fragments MongoDB

count fournit un nombre estimé et peut ne pas être exact. Utilisez countDocuments pour obtenir un décompte précis.

Vous pouvez lire la source de getShardDistribution en tapant db.users.getShardDistribution dans la coquille. Il semble utiliser des informations stockées dans la base de données de configuration.

Il est tout à fait raisonnable de s'attendre à ce que les statistiques stockées par la base de données ne sont pas exactement exactes. En effet, il y a un coût pour qu'ils soient à jour chaque fois qu'une opération est effectuée n'importe où dans le cluster.

Vous semblez consulter les statistiques à un moment donné après que certains morceaux ont été copiés d'un fragment à un autre et avant que ces morceaux ne soient supprimés du fragment d'origine. Dans cette situation, les données sont stockées deux fois dans le cluster. Les statistiques ne sont pas exactes dans ce cas. Pour obtenir un décompte précis, utilisez countDocuments .