आप createCollection()
. का उपयोग करके एक संग्रह बना सकते हैं विधि, या जब आप कोई दस्तावेज़ सम्मिलित करते हैं तो मक्खी पर।
संग्रह संबंधित दस्तावेजों के लिए कंटेनर की तरह हैं। वे आम तौर पर एक समान विषय के दस्तावेज़ों को समूहीकृत करने के लिए उपयोग किए जाते हैं। उदाहरण के लिए, आपके पास संग्रह नाम हो सकते हैं जैसे
उपयोगकर्ता
, pageviews
, posts
, comments
, आदि.
जब हमने अपना डेटाबेस बनाया, तो हमने कलाकार . नामक एक संग्रह बनाया . इस संग्रह में कलाकार विवरण वाले दस्तावेज़ होंगे, जैसे कलाकारों के नाम, उनके द्वारा जारी किए गए एल्बम आदि।
संग्रह बनाने के दो तरीके
संग्रह बनाने के दो तरीके यहां दिए गए हैं:
- दस्तावेज़ डालते समय आप तुरंत एक संग्रह बना सकते हैं (
insert()
का उपयोग करके) तरीका। - आप
createCollection()
. का उपयोग करके स्पष्ट रूप से एक संग्रह भी बना सकते हैं विधि।
मक्खी पर
जब आप insert()
. का उपयोग करते हैं दस्तावेज़ सम्मिलित करने की विधि, आप उस संग्रह को निर्दिष्ट करते हैं जिसमें दस्तावेज़ सम्मिलित किया जाएगा। यदि संग्रह पहले से मौजूद नहीं है, तो इसे बनाया जाएगा।
यह वह तरीका है जिसका उपयोग हमने पहले किया था जब हमने अपने artists
. को बनाया था दस्तावेज़ सम्मिलित करते समय संग्रह।
यहां वह कोड है जिसका हमने उपयोग किया है:
db.artists.insert({ artistname: "The Tea Party" })
इस मामले में, artists
संग्रह पहले मौजूद नहीं था इसलिए इसे हमारे लिए बनाया गया था।
createCollection()
का उपयोग करना विधि
आप createCollection()
. का उपयोग करके भी संग्रह बना सकते हैं तरीका। यह आपको दस्तावेज़ सम्मिलित किए बिना एक संग्रह बनाने की अनुमति देता है।
यहां createCollection()
. का उपयोग करने का एक उदाहरण दिया गया है विधि:
db.createCollection("producers")
विकल्पों के साथ
आप db.createCollection(name, options)
. का उपयोग करके संग्रह के लिए विकल्प भी निर्दिष्ट कर सकते हैं वाक्य रचना।
यहां एक उदाहरण दिया गया है:
db.createCollection("log", { capped : true, size : 4500500, max : 4000 } )
MongoDB संस्करण 3.2 के रूप में उपलब्ध फ़ील्ड इस प्रकार हैं।
फ़ील्ड | प्रकार | <थ>विवरण|||||||
---|---|---|---|---|---|---|---|---|
capped | बूलियन | जब true पर सेट किया जाता है , एक कैप्ड संग्रह बनाता है। कैप्ड संग्रह एक निश्चित आकार का संग्रह है जो अपने अधिकतम आकार तक पहुंचने पर अपनी सबसे पुरानी प्रविष्टियों को स्वचालित रूप से अधिलेखित कर देता है। यदि आप true निर्दिष्ट करते हैं , आपको size . में अधिकतम आकार भी सेट करना होगा फ़ील्ड. | ||||||
autoIndexId | बूलियन | false निर्दिष्ट करें _id . पर किसी अनुक्रमणिका के स्वत:निर्माण को अक्षम करने के लिए खेत। MongoDB संस्करण 3.2 के अनुसार, यह फ़ील्ड बहिष्कृत है, और इसे संस्करण 3.4 में हटा दिया जाएगा। | ||||||
size | संख्या | कैप्ड संग्रह के लिए बाइट्स में अधिकतम आकार। केवल कैप्ड संग्रह के साथ प्रयोग किया जाता है (इसे अन्य संग्रहों में अनदेखा किया जाता है)। | ||||||
max | संख्या | कैप्ड संग्रह में अनुमत दस्तावेज़ों की अधिकतम संख्या। ध्यान दें कि size फ़ील्ड max . से अधिक प्राथमिकता लेता है खेत। यदि दस्तावेज़ सीमा तक पहुँचने से पहले संग्रह अपनी आकार सीमा तक पहुँच जाता है, तो MongoDB वैसे भी दस्तावेज़ों को हटा देगा। | ||||||
usePowerOf2Sizes | बूलियन | केवल MMAPv1 संग्रहण इंजन में उपलब्ध है। इस फ़ील्ड को संस्करण 3.0 से हटा दिया गया है। | ||||||
noPadding | बूलियन | केवल MMAPv1 संग्रहण इंजन में उपलब्ध है। संग्रह के लिए 2 आकार आवंटन की शक्ति अक्षम करता है। डिफ़ॉल्ट रूप से false । | ||||||
storageEngine | दस्तावेज़ | केवल WiredTiger स्टोरेज इंजन में उपलब्ध है। संग्रह बनाते समय संग्रहण इंजन को प्रति-संग्रह के आधार पर कॉन्फ़िगरेशन की अनुमति देता है। सिंटैक्स इस प्रकार है:{ <storage-engine-name>: <options> } | ||||||
validator | दस्तावेज़ | आपको संग्रह के लिए सत्यापन नियम या अभिव्यक्ति निर्दिष्ट करने की अनुमति देता है। ध्यान दें कि सत्यापन केवल डेटा डालने और अपडेट करने पर ही लागू होता है। इसलिए, डेटाबेस में पहले से मौजूद डेटा मान्य नहीं है (जब तक इसे अपडेट नहीं किया जाता)। | ||||||
validationLevel | स्ट्रिंग | आपको यह निर्दिष्ट करने की अनुमति देता है कि किसी अद्यतन के दौरान मौजूदा दस्तावेज़ों पर किसी भी सत्यापन नियम को कितनी सख्ती से लागू किया जाता है। संभावित मान:
| ||||||
validationAction | स्ट्रिंग | निर्दिष्ट करता है कि क्या कोई त्रुटि होनी चाहिए, या केवल एक चेतावनी, जब अमान्य दस्तावेज़ सम्मिलित किए जाते हैं। यदि कोई त्रुटि है, तो अमान्य दस्तावेज़ अभी भी डाले जाएंगे, लेकिन एक चेतावनी के साथ।
| ||||||
indexOptionDefaults | दस्तावेज़ | संग्रह बनाते समय आपको अनुक्रमणिका के लिए एक डिफ़ॉल्ट कॉन्फ़िगरेशन निर्दिष्ट करने की अनुमति देता है। एक storageEngine स्वीकार करता है निम्नलिखित सिंटैक्स वाला दस्तावेज़:{ |