दूसरा संस्करण एक एकत्रीकरण पाइपलाइन निष्पादन जोड़ता है शामिल संग्रह में प्रत्येक दस्तावेज़ के लिए ।
दस्तावेज कहते हैं:
संग्रह में प्रत्येक दस्तावेज़ के लिए पाइपलाइन निष्पादित की जाती है, प्रत्येक मिलान किए गए दस्तावेज़ के लिए नहीं।
संग्रह कितना बड़ा है (दस्तावेज़ों और दस्तावेज़ आकार दोनों का) के आधार पर यह एक अच्छे समय के लिए निकल सकता है।
समझ में आता है - सीमा को हटाने के कारण सभी अतिरिक्त दस्तावेज़ों में उनके लिए एकत्रीकरण पाइपलाइन भी होनी चाहिए।
यह संभव है कि एकत्रीकरण पाइपलाइन का प्रति-दस्तावेज़ निष्पादन उतना अनुकूलित न हो जितना हो सकता है। उदाहरण के लिए, यदि प्रत्येक दस्तावेज़ के लिए पाइपलाइन स्थापित और फाड़ दी जाती है, तो उस में आसानी से अधिक ओवरहेड हो सकता है $match की स्थिति की तुलना में।
प्रत्येक सम्मिलित दस्तावेज़ के लिए एक एकत्रीकरण पाइपलाइन को निष्पादित करना अतिरिक्त लचीलापन प्रदान करता है। यदि आपको इस लचीलेपन की आवश्यकता है, तो पाइपलाइन को निष्पादित करना समझ में आता है, हालांकि प्रदर्शन पर ध्यान दिए बिना विचार करने की आवश्यकता है। यदि आप नहीं करते हैं, तो अधिक प्रदर्शनकारी दृष्टिकोण का उपयोग करना समझदारी है।