sql >> Database teknologi >  >> NoSQL >> MongoDB

mongo:afkastet svarer ikke til antal()

Dette skyldes en af ​​følgende årsager som nævnt i dokumentationen.

På en sharded cluster kan db.collection.count() resultere i en unøjagtig optælling, hvis der findes forældreløse dokumenter, eller hvis en chunk-migrering er i gang.

For at undgå disse situationer, på en sharded klynge, skal du bruge $group-stadiet i db.collection.aggregate() metode til at $summe dokumenterne. For eksempel tæller følgende handling dokumenterne i en samling:

Du kan bruge aggregate metode til at gøre dette som foreslået i dokumentationen.

Scan.aggregate(
    {'$group': {
        '_id': None, 
        'count': {'$sum': 1}
    }}
)



  1. Hvordan fjerner du dubletter baseret på en nøgle i Mongodb?

  2. Opgradering til ClusterControl Enterprise Edition

  3. Hvordan opretter man en distribueret lås med Redis?

  4. Hvordan konfigureres AppArmor til MongoDB Replica Sets?