sql >> Database >  >> NoSQL >> MongoDB

Hoe lees je het liefst op secondaries in MongoDb

Het juiste antwoord, na veel bloed en zweet, is als volgt:

  • Om de voorkeur te geven aan alle reads/query's, klik op de secondaries, alleen slaveOk() moet worden ingesteld
  • Als u de voorkeur wilt geven aan alleen geselecteerde leesbewerkingen, gebruik dan secundairen, stel slaveOk() niet in en gebruik queryNonPrimary() in plaats daarvan per zoekopdracht

Het is ook een goede gewoonte om een ​​geschikt schrijfprobleem in te stellen bij het gebruik van replicasets, zoals:

mongo.setWriteConcern(WriteConcern.REPLICAS_SAFE);


  1. mongodb haalt het hele document uit een waarde

  2. Verwijzen naar andere documenten per string in plaats van ObjectId

  3. MongoDB $sum en $avg van subdocumenten

  4. JSON-pad bovenliggend object of gelijkwaardige MongoDB-query