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

एकत्रीकरण ढांचे में $स्किप और $लिमिट

चूंकि यह एक टेक्स्ट सर्च क्वेरी है जिसके बारे में हम बात कर रहे हैं तो सबसे इष्टतम फॉर्म यह है:

db.collection.aggregate([
    { 
       "$match": {
               "$text": { "$search": "cake tea" }
    }
    },
    { "$sort": { "score": { "$meta": "textScore" } } },
    { "$limit": skip + limit },
    { "$skip": skip }
])

शीर्ष "सॉर्ट" परिणामों से मेमोरी रिजर्व पर तर्क केवल अपनी "सीमा" के भीतर ही काम करेगा और यह डेटा के कुछ उचित "पृष्ठों" से परे किसी भी चीज़ के लिए इष्टतम नहीं होगा।

स्मृति खपत के लिए जो उचित है, उससे परे, अतिरिक्त चरण का सकारात्मक होने के बजाय नकारात्मक प्रभाव पड़ने की संभावना है।

ये वास्तव में वर्तमान स्वरूप में MongoDB के लिए उपलब्ध पाठ खोज क्षमताओं की व्यावहारिक सीमाएँ हैं। लेकिन अधिक विस्तृत और अधिक प्रदर्शन की आवश्यकता के लिए, जैसा कि कई SQL "पूर्ण पाठ" समाधानों के मामले में होता है, आप बाहरी "उद्देश्य निर्मित" पाठ खोज समाधान का उपयोग करना बेहतर समझते हैं।



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB में वास्तविक प्रकार का फ़ील्ड लौटाएं

  2. स्प्रिंग डेटा MongoDB में GridFS

  3. MongoDB E11000 डुप्लिकेट कुंजी त्रुटि

  4. उल्का में औसत एकत्रीकरण प्रश्न

  5. मोंगोडब में कई स्थितियों के साथ अद्यतन सरणी