MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

क्या अनुक्रमित कुंजियों पर कर्सर.स्किप () हमेशा तेज होता है?

आपकी कोई भी क्वेरी age . पर फ़िल्टर नहीं कर रही है , इसलिए अनुक्रमणिका का उपयोग करने का कोई कारण नहीं है।

अगर आप age . पर कोई शर्त जोड़ते हैं , अंतर होगा (भले ही इतने कम दस्तावेज़ों के साथ न्यूनतम हो)

> pageNumber=18;nPerPage=20; db.slow.find({age:{$gt:200}}).
      skip(pageNumber > 0 ? ((pageNumber-1)*nPerPage) : 0).limit(nPerPage).
      explain("executionStats")

# "executionTimeMillis" : 14,
# "inputStage" : {
#     "stage" : "COLLSCAN",

> pageNumber=18;nPerPage=20; db.fast.find({age:{$gt:200}}).
      skip(pageNumber > 0 ? ((pageNumber-1)*nPerPage) : 0).limit(nPerPage).
      explain("executionStats"

# "executionTimeMillis" : 0,
# "inputStage" : {
#     "stage" : "IXSCAN",


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. 2016 में उल्का उत्पादन डेटाबेस तक पहुंचना

  2. MongoDB पाठ खोज के लिए केवल मेल खाने वाले फ़ील्ड दिखाएं

  3. मोंगोडब:विशिष्ट दस्तावेज प्राप्त करने का सबसे अच्छा तरीका और फिर बाकी

  4. धीमी मोंगोडीबी क्वेरी:क्या आप समझा सकते हैं क्यों?

  5. नेवला में एक उप-दस्तावेज़ खोजें