MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

MongoDB ज़ोन मूल बातें का परिचय

MongoDB क्षेत्र

MongoDB ज़ोन को समझने के लिए, हमें पहले यह समझना होगा कि ज़ोन क्या है:टैग के एक विशिष्ट सेट के आधार पर शार्क का एक समूह।

MongoDB ज़ोन, शार्क के बीच टैग के आधार पर विखंडू के वितरण में मदद करते हैं। ज़ोन के भीतर दस्तावेज़ों से संबंधित सभी कार्य (पढ़ना और लिखना) उस ज़ोन से मेल खाने वाली शार्क पर किया जाता है।

अलग-अलग परिदृश्य हो सकते हैं जहां शार्प्ड क्लस्टर (ज़ोन-आधारित) अत्यधिक उपयोगी साबित हो सकते हैं। मान लें:

  • एक एप्लिकेशन, जिसे भौगोलिक रूप से वितरित किया जाता है, को फ्रंटएंड और साथ ही डेटा स्टोर की आवश्यकता हो सकती है
  • एक एप्लिकेशन में एक एन-टियर आर्किटेक्चर होता है जैसे कि कुछ रिकॉर्ड उच्च स्तरीय (कम विलंबता) हार्डवेयर से प्राप्त किए जाते हैं, जबकि अन्य को निम्न स्तरीय (उच्च विलंबता उत्प्रेरण) हार्डवेयर से प्राप्त किया जा सकता है

MongoDB ज़ोन का उपयोग करने के लाभ

MongoDB ज़ोन की मदद से, DBA डेटा जीवनचक्र का समर्थन करने वाले स्तरीय भंडारण समाधान बना सकते हैं, स्मृति में संग्रहीत अक्सर उपयोग किए जाने वाले डेटा, सर्वर पर संग्रहीत कम उपयोग किए गए डेटा, और उचित समय पर संग्रहीत डेटा को ऑफ़लाइन लिया जाता है।

जोन कैसे सेट करें

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

कुछ सबसे सामान्य परिनियोजन पैटर्न जहाँ ज़ोन लागू किए जा सकते हैं, वे इस प्रकार हैं:

  • शार्ड के एक विशिष्ट सेट पर डेटा के एक विशिष्ट सबसेट को अलग करें।
  • यह सुनिश्चित करके कि सबसे प्रासंगिक डेटा उन शार्क पर रहता है जो भौगोलिक दृष्टि से एप्लिकेशन सर्वर के सबसे करीब हैं।
  • शार्ड हार्डवेयर के प्रदर्शन के आधार पर डेटा को शार्ड तक रूट करें।

निम्न छवि तीन शार्प और दो ज़ोन के साथ एक शार्प क्लस्टर को दर्शाती है। A ज़ोन 0 की निचली सीमा और 10 की ऊपरी सीमा के साथ एक श्रेणी का प्रतिनिधित्व करता है। B ज़ोन 10 की निचली सीमा और 20 की ऊपरी सीमा के साथ एक सीमा दिखाता है। RED और BLUE में A क्षेत्र होता है। Shard BLUE में B ज़ोन भी है। Shard GREEN का इससे कोई संबंध नहीं है। क्लस्टर स्थिर स्थिति में है और कोई भी हिस्सा किसी भी क्षेत्र का उल्लंघन नहीं करता है

एक MongoDB क्षेत्र की सीमा

प्रत्येक ज़ोन में शार्प की वैल्यू की एक या अधिक रेंज शामिल हैं। प्रत्येक श्रेणी जो एक ज़ोन कवर करती है, हमेशा उसकी निचली सीमा और उसकी ऊपरी सीमा को छोड़कर शामिल होती है।

याद रखें: क्षेत्र श्रेणियों को साझा नहीं कर सकते हैं और उनके पास अतिव्यापी श्रेणियां नहीं हो सकती हैं।

क्षेत्र में शार्ड जोड़ना

sh.addShardTag() मेथड का इस्तेमाल शार्ड में जोन जोड़ने के लिए किया जाता है। एक शार्प में कई ज़ोन हो सकते हैं, और कई शार्प में भी एक ही ज़ोन हो सकता है। निम्न उदाहरण ज़ोन ए को एक शार्क में जोड़ता है।

sh.addShardTag("shard0000", "A")

शर्ड को किसी क्षेत्र में हटाना

शार्ड से किसी क्षेत्र को हटाने के लिए, sh.removeShardTag () विधि का उपयोग किया जाता है। निम्न उदाहरण ज़ोन ए को एक शार्क से हटा देता है।

sh.removeShardTag("shard0002", "A")
मोंगोडीबी डीबीए बनें - मोंगोडीबी को प्रोडक्शन में लाना सीखें कि मोंगोडीबी को तैनात करने, मॉनिटर करने, प्रबंधित करने और स्केल करने के लिए आपको क्या जानने की जरूरत है मुफ्त में डाउनलोड करें

MongoDB ज़ोन के लिए टिप्स

दस्तावेजों को सरल रखें

MongoDB एक स्कीमा-मुक्त डेटाबेस है। इसका मतलब है कि डिफ़ॉल्ट रूप से कोई पूर्वनिर्धारित स्कीमा नहीं है। हम नए संस्करणों में एक पूर्वनिर्धारित स्कीमा जोड़ सकते हैं, लेकिन यह अनिवार्य नहीं है। दस्तावेजों और सरणियों के साथ काम करते समय आने वाली कठिनाइयों को कम मत समझो, क्योंकि आवेदन पक्ष/ईटीएल प्रक्रिया में आपके डेटा को पार्स करना वास्तव में कठिन हो सकता है। इसके अलावा, सरणियाँ प्रतिकृति प्रदर्शन को नुकसान पहुँचा सकती हैं:सरणी में प्रत्येक परिवर्तन के लिए, सभी सरणी मानों को दोहराया जाता है।

सर्वश्रेष्ठ हार्डवेयर हमेशा सर्वश्रेष्ठ विकल्प नहीं होता

अच्छे हार्डवेयर का उपयोग निश्चित रूप से एक अच्छे प्रदर्शन के लिए मदद करता है। लेकिन ऐसे वातावरण में क्या हो सकता है जब एक बड़ी मशीन का एक उदाहरण मर जाता है? इसका उत्तर है 'विफलता'।

वितरित वातावरण में कई छोटी मशीनें (एक या दो के बजाय) होने से यह सुनिश्चित हो सकता है कि एप्लिकेशन द्वारा बहुत कम या कोई धारणा के साथ शार्प के केवल कुछ हिस्सों को प्रभावित किया जा रहा है। लेकिन एक ही समय में, अधिक मशीनों का मतलब है कि विफलता की उच्च संभावना है। अपने पर्यावरण को डिजाइन करते समय इस ट्रेडऑफ़ पर विचार करें। सही विकल्प प्रदर्शन को प्रभावित करते हैं।

वर्किंग सेट

वर्किंग सेट कितना बड़ा है? आमतौर पर, कोई एप्लिकेशन सभी डेटा का उपयोग नहीं करता है। कुछ डेटा अक्सर अपडेट किया जाता है, जबकि अन्य डेटा नहीं होता है। क्या आपका काम करने वाला डेटासेट रैम में फिट होता है? इष्टतम प्रदर्शन तब होता है जब सभी कार्यशील डेटा सेट RAM में होते हैं।


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. एग्रीगेशन फ्रेमवर्क पाइपलाइन में ऐरे सबसेट

  2. MongoDB में एम्बेडेड दस्तावेज़ को सरणी में बदलना

  3. मोंगोडब द्वारा उपयोग किए जाने वाले कैशिंग को कैसे जारी किया जाए?

  4. BsonRepresentation(BsonType.ObjectId) बनाम BsonId बनाम ObjectId के साथ C# में किसी संपत्ति को सजाने के बीच अंतर

  5. एक नए _id . का उपयोग करके MongoDB में एक दस्तावेज़ को डुप्लिकेट करें