कर्सर इन MongoDB ट्यूटोरियल: उदाहरणों के साथ सीखें

⚡ स्मार्ट सारांश

कर्सर इन MongoDB यह db.collection.find() फ़ंक्शन द्वारा मिलान करने वाले दस्तावेज़ों के परिणाम सेट को लौटाया गया एक पॉइंटर है। यह डिफ़ॉल्ट रूप से स्वचालित रूप से चलता है, लेकिन डेवलपर hasNext() और next() जैसी विधियों का उपयोग करके दस्तावेज़ों को एक-एक करके देख सकते हैं।

  • कर्सर परिभाषित: db.collection.find() द्वारा लौटाए गए दस्तावेज़ों का एक पॉइंटर MongoDB.
  • 🔁 ऑटो-इटरेशन: डिफ़ॉल्ट रूप से, क्वेरी परिणाम वापस आने पर कर्सर स्वचालित रूप से चलता है।
  • 👉 मैन्युअल पुनरावृति: while लूप में hasNext() और next() का उपयोग करके एक-एक करके दस्तावेज़ों को देखें।
  • 📄 Readable आउटपुट: प्रत्येक दस्तावेज़ को पठनीय JSON प्रारूप में प्रिंट करने के लिए tojson() फ़ंक्शन का उपयोग करें।
  • 🔎 उदाहरण प्रश्न: find({Employeeid:{$gt:2}}) उन कर्मचारियों को लौटाता है जिनकी आईडी 2 से अधिक है।

कर्सर इन MongoDB

कर्सर क्या है? MongoDB?

जब db.संग्रह.खोज () फ़ंक्शन का उपयोग संग्रह में दस्तावेज़ों की खोज करने के लिए किया जाता है, परिणाम दस्तावेज़ों के संग्रह के लिए एक पॉइंटर लौटाता है जिसे कर्सर कहा जाता है।

डिफ़ॉल्ट रूप से, क्वेरी का परिणाम वापस आने पर कर्सर स्वचालित रूप से पुनरावृत्त हो जाएगा। लेकिन कोई व्यक्ति कर्सर में लौटाए गए आइटम को एक-एक करके स्पष्ट रूप से देख भी सकता है। यदि आप नीचे दिए गए उदाहरण को देखें, यदि हमारे संग्रह में 3 दस्तावेज़ हैं, तो कर्सर ऑब्जेक्ट पहले दस्तावेज़ को इंगित करेगा और फिर संग्रह के सभी दस्तावेज़ों को पुनरावृत्त करेगा।

कर्सर इन MongoDB

निम्नलिखित उदाहरण दिखाता है कि यह कैसे किया जा सकता है।

var myEmployee = db.Employee.find( { Employeeid : { $gt:2 }});

	while(myEmployee.hasNext())

	{

		print(tojson(myEmployee.next()));

	}

Code व्याख्या

  1. सबसे पहले हम क्वेरी का परिणाम सेट लेते हैं जो उन कर्मचारियों को ढूंढता है जिनकी आईडी 2 से अधिक है और इसे असाइन करते हैं Javaलिपि चर 'myEmployee'
  2. इसके बाद हम क्वेरी के भाग के रूप में लौटाए गए सभी दस्तावेजों को पुनरावृत्त करने के लिए while लूप का उपयोग करते हैं।
  3. अंत में प्रत्येक दस्तावेज़ के लिए, हम उस दस्तावेज़ का विवरण प्रिंट करते हैं JSON पठनीय प्रारूप.

यदि आदेश सफलतापूर्वक निष्पादित होता है, तो निम्नलिखित आउटपुट दिखाया जाएगा

उत्पादन

कर्सर इन MongoDB

अक्सर पूछे जाने वाले प्रश्न

आप एक पुनरावृति करते हैं MongoDB while लूप में hasNext() और next() जैसी विधियों का उपयोग करके या forEach() का उपयोग करके कर्सर को सक्रिय किया जा सकता है। डिफ़ॉल्ट रूप से, शेल स्वचालित रूप से पहले 20 दस्तावेज़ों पर पुनरावृति करता है।

A MongoDB कर्सर दस्तावेज़ों को बैचों में लौटाता है। पहले बैच में अधिकतम 101 दस्तावेज़ या 16 एमबी हो सकते हैं, और शेल आगे के लिए संकेत देने से पहले पहले 20 परिणाम स्वतः प्रदर्शित करता है।

हाँ। डिफ़ॉल्ट रूप से, एक MongoDB सर्वर पर 10 मिनट की निष्क्रियता के बाद कर्सर का समय समाप्त हो जाता है। लंबे समय तक चलने वाले कार्यों के लिए आप noCursorTimeout विकल्प का उपयोग करके इसे अक्षम कर सकते हैं।

एआई सहायक उत्पन्न कर सकते हैं MongoDB क्वेरी ढूंढना, एग्रीगेशन पाइपलाइन बनाना, कर्सर विधियों की व्याख्या करना और सामान्य भाषा के अनुरोधों को शेल या ड्राइवर कोड में परिवर्तित करना आदि।ping डेवलपर्स तेजी से डेटा क्वेरी कर सकते हैं।

हाँ। एआई उपकरण इंडेक्स सुझा सकते हैं, लौटाए गए फ़ील्ड को सीमित करने के लिए प्रोजेक्शन की अनुशंसा कर सकते हैं, और अक्षम क्वेरी को चिह्नित कर सकते हैं।ping कर्सर प्रोसेसिंग समय और मेमोरी उपयोग को कम करें MongoDB अनुप्रयोगों.

इस पोस्ट को संक्षेप में इस प्रकार लिखें: