आप एक इंडेक्स नहीं बना सकते जो आपके द्वारा वर्णित तरीके से काम करता है। एकत्रीकरण चलाते समय पाइपलाइन चरण के आउटपुट में से किसी एक को "अनुक्रमित" करने का कोई तरीका नहीं है।
कुछ एग्रीगेशन ऑपरेटर हैं जो के साथ काम कर सकते हैं MongoDB संग्रह अनुक्रमणिका ।
वर्तमान में, उनमें शामिल हैं:$match
, $sort
, $limit
, और $skip
.
$match
. के रूप में उनमें से एक है, आपके द्वारा लिखी गई एकत्रीकरण क्वेरी का प्रदर्शन दो क्षेत्रों पर एक मिश्रित अनुक्रमणिका घोषित करने से लाभान्वित हो सकता है, खासकर जब आपने $match
को सही ढंग से रखा है पाइपलाइन की शुरुआत में:
db.theCollection.ensureIndex({user: 1, type: 1})
$group
पाइपलाइन में कदम $match
. से परिणाम लेगा और आदर्श रूप से, अपेक्षाकृत जल्दी हो। :)पी>