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

$lookup (पाइपलाइन का उपयोग करके) में अन्य शामिल होने की स्थितियों के साथ बहुत खराब प्रदर्शन

दूसरा संस्करण एक एकत्रीकरण पाइपलाइन निष्पादन जोड़ता है शामिल संग्रह में प्रत्येक दस्तावेज़ के लिए

दस्तावेज कहते हैं:

संग्रह में प्रत्येक दस्तावेज़ के लिए पाइपलाइन निष्पादित की जाती है, प्रत्येक मिलान किए गए दस्तावेज़ के लिए नहीं।

संग्रह कितना बड़ा है (दस्तावेज़ों और दस्तावेज़ आकार दोनों का) के आधार पर यह एक अच्छे समय के लिए निकल सकता है।

समझ में आता है - सीमा को हटाने के कारण सभी अतिरिक्त दस्तावेज़ों में उनके लिए एकत्रीकरण पाइपलाइन भी होनी चाहिए।

यह संभव है कि एकत्रीकरण पाइपलाइन का प्रति-दस्तावेज़ निष्पादन उतना अनुकूलित न हो जितना हो सकता है। उदाहरण के लिए, यदि प्रत्येक दस्तावेज़ के लिए पाइपलाइन स्थापित और फाड़ दी जाती है, तो उस में आसानी से अधिक ओवरहेड हो सकता है $match की स्थिति की तुलना में।

प्रत्येक सम्मिलित दस्तावेज़ के लिए एक एकत्रीकरण पाइपलाइन को निष्पादित करना अतिरिक्त लचीलापन प्रदान करता है। यदि आपको इस लचीलेपन की आवश्यकता है, तो पाइपलाइन को निष्पादित करना समझ में आता है, हालांकि प्रदर्शन पर ध्यान दिए बिना विचार करने की आवश्यकता है। यदि आप नहीं करते हैं, तो अधिक प्रदर्शनकारी दृष्टिकोण का उपयोग करना समझदारी है।




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. क्या उल्का सीधे MongoDB डेटाबेस में बाहरी रूप से अपडेट किए गए डेटा को सही ढंग से संभाल सकता है?

  2. मोंगोडब क्वेरी में औसत, औसत, न्यूनतम, अधिकतम की गणना कैसे करें?

  3. मोंगोडब में जोंस फाइल डालें

  4. संग्रह के दस्तावेज़ में विभिन्न उपप्रकारों का योग

  5. MongoDB विश्लेषिकी श्रृंखला:SlamData - SQL चलाएँ और सीधे MongoDB पर रिपोर्ट बनाएँ