यदि आप दस्तावेज़ सम्मिलित कर रहे हैं, तो MongoDB को यह जाँचने की आवश्यकता है कि समान ObjectId वाला दस्तावेज़ मौजूद है या नहीं। यदि यह मौजूद है तो दस्तावेज़ सम्मिलित नहीं किया जा सकता है।
अपडेट पर भी यही मामला लागू होता है। यह जांचना आवश्यक है कि दस्तावेज़ मौजूद है या नहीं। अन्यथा, अद्यतन नहीं किया जा सकता। वह स्थिति जहां आपकी अपडेट क्वेरी धीमी हो जाएगी, जब वह आपके ऑब्जेक्ट आईडी/अनुक्रमित फ़ील्ड के आधार पर दस्तावेज़ नहीं ढूंढ पाती है।
अन्यथा, दस्तावेज़ डालने/अपडेट करने का प्रदर्शन समान होना चाहिए।
तो इन्सर्ट इस तरह हो सकता है //(फास्ट)
- (दस्तावेज़ की जाँच करें -> नहीं मिला -> नया दस्तावेज़ सम्मिलित करें) अन्यथा
- (दस्तावेज़ की जाँच करें -> मिला -> सम्मिलित नहीं किया जा सकता)
और अप्सर्ट के साथ अपडेट करें (ऑब्जेक्टआईड उपलब्ध) //(फास्ट)
- (दस्तावेज़ की जाँच करें -> नहीं मिला -> नया दस्तावेज़ सम्मिलित करें) अन्यथा
- (दस्तावेज़ की जाँच करें -> मिला -> दस्तावेज़ अपडेट करें)
या अप्सर्ट के साथ अपडेट करें (बिना ऑब्जेक्ट आईडी के) // यह धीमा है
- (ऑब्जेक्ट आईडी खोजें (धीमा) -> नहीं मिला -> नया दस्तावेज़ डालें) अन्यथा
- (ऑब्जेक्ट आईडी खोजें (धीमा)-> मिला -> दस्तावेज़ अपडेट करें)