इस प्रश्न में मेरा उत्तर मिला:MongoDB रेंज क्वेरी में $lt और $gt का ऑर्डर
मेरी अनुक्रमणिका एक बहु-कुंजी अनुक्रमणिका है (tags
. पर) ) और मैं एक श्रेणी क्वेरी चला रहा हूं (post_time
. पर) ) जाहिर है
, MongoDB इस मामले में सीमा के दोनों किनारों को फ़िल्टर के रूप में उपयोग नहीं कर सकता है, इसलिए यह केवल $gte
चुनता है खंड, जो पहले आता है। चूंकि मेरी निचली सीमा सबसे कम है post_time
मान, MongoDB सभी वस्तुओं को स्कैन करना शुरू कर देता है।
दुर्भाग्य से, यह पूरी कहानी नहीं है। समस्या को हल करने की कोशिश करते हुए, मैंने गैर-मल्टीकी इंडेक्स भी बनाए लेकिन मोंगोडीबी ने खराब का उपयोग करने पर जोर दिया। इससे मुझे लगा कि समस्या कहीं और है। अंत में, मुझे मल्टीकी इंडेक्स को छोड़ना पड़ा और बिना tags
. के एक बनाना पड़ा खेत। अब सब कुछ ठीक है।