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

MongoDB:snížený výkon dotazů

1.:Vaše dotazy jsou příliš složité. Příliš časté používání $elemMatch. 2.:Pokud do dotazu zahrnete svůj shard klíč, výrazně to zvýší rychlost.

Budu pro vás optimalizovat vaše dotazy:

db.user.find({
     createdAt: {
          $gte: ISODate("2014-12-01"), 
          $lte: ISODate("2014-12-31")
     }
}).explain()

db.user.find({
    'transaction.product':'mobile'
}).explain()

db.user.find({
    'transaction.product':'mobile', 
    firstTransaction:{
       $in:[
           ISODate("2015-01-01"),
           ISODate("2015-01-02")
       ]
    }
}).explain()

Sečteno a podtrženo:zahrňte svůj úlomkový klíč pokaždé, abyste ušetřili čas.

Může dokonce ušetřit čas procházením vašich fragmentů klíčů a opakováním stejného dotazu.



  1. Při použití expresního balíčku html-pdf se obrázek nevykresluje z cesty dynamického obrázku

  2. Mongoose Index na poli ve vnořeném dokumentu

  3. Zabraňte Spring Data pro Mongo převést ID na ObjectId

  4. jak vypočítat prům, medián, min, max v dotazu mongodb?