sql >> Databáze >  >> NoSQL >> MongoDB

Nesprávný počet dokumentů v clusteru fragmentů MongoDB

count poskytuje odhadovaný počet a nemusí být přesný. Použijte countDocuments získat přesný počet.

Můžete si přečíst zdroj getShardDistribution zadáním db.users.getShardDistribution ve skořápce. Zdá se, že používá informace uložené v konfigurační databázi.

Je docela rozumné očekávat, že statistiky uložené v databázi nejsou přesně přesné. Je to proto, že je stojí jejich aktualizace, kdykoli se kdekoli v clusteru provádí jakákoli operace.

Zdá se, že se díváte na statistiky v určitém okamžiku poté, co byly některé části zkopírovány z jednoho datového fragmentu do druhého a předtím, než jsou tyto bloky odstraněny z původního datového fragmentu. V této situaci jsou data v clusteru uložena dvakrát. Statistiky v tomto případě nejsou přesné. Chcete-li získat přesný počet, použijte countDocuments .




  1. Jak třídit pole uvnitř záznamu kolekce v MongoDB?

  2. Spring MongoRepository se aktualizuje nebo upserting místo vkládání

  3. Jak mohu implementovat tuto jedinou souběžně distribuovanou frontu v jakékoli platformě MQ?

  4. MongoDb - Jak mohu aktualizovat více prvků vnořeného objektu pomocí $set?