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

रेगेक्स और सॉर्ट के साथ मोंगोडब सरल उपसर्ग क्वेरी धीमी है

scanAndOrder: true व्याख्या आउटपुट में इंगित करता है कि क्वेरी को दस्तावेज़ों को पुनः प्राप्त करना है और फिर आउटपुट वापस आने से पहले उन्हें स्मृति में सॉर्ट करना है। यह एक महंगा ऑपरेशन है, और आपकी क्वेरी के प्रदर्शन पर इसका प्रभाव पड़ेगा।

scanAndOrder: true . का अस्तित्व साथ ही nscanned . में अंतर एक n व्याख्या आउटपुट में इंगित करता है कि क्वेरी इष्टतम अनुक्रमणिका का उपयोग नहीं कर रही है। इस मामले में ऐसा लगता है कि संग्रह स्कैन करने की आवश्यकता है। आप अपने sort . में अनुक्रमणिका कुंजियों को शामिल करके इस समस्या को कम करने में सक्षम हो सकते हैं मानदंड। मेरे परीक्षण से:

db.posts.find({hashtags: /^noticias/ }).limit(15).sort({hashtags:1, rank : -1}).explain()

स्कैन और ऑर्डर की आवश्यकता नहीं है, और n returns लौटाता है और nscanned आपके द्वारा खोजे जा रहे रिकॉर्ड की संख्या के बारे में। इसका मतलब hashtags . पर सॉर्ट करना भी होगा कुंजी, जो आपके लिए उपयोगी हो भी सकती है और नहीं भी, लेकिन क्वेरी के प्रदर्शन को बढ़ा सकती है।




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoId ऑब्जेक्ट्स की सरणी को स्ट्रिंग्स की सरणी में कनवर्ट करें

  2. मूल्य के बजाय अभिव्यक्ति के साथ अद्यतन करें

  3. MongoDB में FindAndModify और अपडेट में क्या अंतर है?

  4. मोंगोडब के मानचित्र/कम करने में चरण-दर-चरण डीबग कैसे करें

  5. MongoDb $addFields और $match