MongoDB के नवीनतम संस्करण पूर्ववर्ती संस्करणों से नई या बेहतर सुविधाओं को एकीकृत करने के लिए बनाए गए हैं। इस कारण से, अधिकतम प्रदर्शन और अतिरिक्त सुविधाओं के लिए नवीनतम संस्करण चलाने की अनुशंसा की जाती है। इसके अलावा, नवीनतम संस्करण MongoDB संस्करण के आधार पर निश्चित बग के परिणामस्वरूप हो सकते हैं।
मोंगोडीबी संस्करण
MongoDB संस्करण X.Y.Z के रूप में हैं।
- जब Y सम होता है, अर्थात 4.0 या 4.2, यह एक ऐसी रिलीज़ श्रृंखला को संदर्भित करता है जो स्थिर है इसलिए उत्पादन के लिए अनुशंसित है। इस मामले में नई सुविधाओं को एकीकृत किया जाता है जिसके परिणामस्वरूप पश्च असंगतता हो सकती है।
- यदि Y विषम है, अर्थात 4.1 या 4.3, तो यह विकास श्रृंखला को संदर्भित करता है जो स्थिर नहीं है इसलिए केवल परीक्षण के लिए अनुशंसित है।
- Z एक रिवीजन/पैच नंबर को संदर्भित करता है। बग फिक्सिंग और पिछड़े संगत परिवर्तन शामिल हैं।
एक अच्छा प्रदर्शन करने वाला डेटाबेस सुनिश्चित करने के लिए MongoDB ड्राइवर संस्करणों पर भी विचार करना महत्वपूर्ण है।
अपग्रेड करने से पहले के विचार
- बैकअप :अपग्रेड के बीच में कुछ क्रैश हो सकता है और अंत में डेटाबेस के पास मौजूद डेटा की अखंडता से समझौता हो जाता है। इसलिए, यह अनुशंसा की जाती है कि किसी निश्चित संस्करण में अपग्रेड करने से पहले हमेशा डेटा का बैकअप बना लें।
- रखरखाव विंडो :प्रतिकृति सेट शामिल होने पर कुछ संस्करण में अपग्रेड करते समय कुछ जटिलता उत्पन्न हो सकती है। इस प्रक्रिया के लिए पर्याप्त समय निर्धारित करने की आवश्यकता है ताकि आपको उच्च डाउनटाइम का सामना न करना पड़े।
- संस्करण संगतता :रिलीज नोट्स को पढ़ना सुनिश्चित करें और जांचें कि क्या आपका सिस्टम सेटअप उस संस्करण के अनुकूल होगा जिसे आप अपग्रेड करना चाहते हैं। ड्राइवर संगतता पृष्ठ पर ड्राइवर संगतता दस्तावेज़ भी देखें यदि वे उस MongoDB संस्करण के साथ काम कर सकते हैं जिसे आप अपग्रेड करना चाहते हैं। उदाहरण के लिए MongoDB 4.2 से ऊपर की ओर Ubuntu 16.04 PPCLE सिस्टम के लिए कोई सपोर्ट नहीं है।
- स्ट्रीम बदलें :परिवर्तन धाराओं को अनुप्रयोगों के लिए डिज़ाइन किया गया है ताकि आवश्यक रूप से ओप्लॉग को पूंछे बिना रीयल-टाइम डेटा परिवर्तनों तक पहुंच सकें। 4.0.7 से पहले के MongoDB संस्करणों के लिए, परिवर्तन स्ट्रीम एक संस्करण 0 v0 फिर से शुरू टोकन का उपयोग करता है जबकि यह संस्करण और उत्तराधिकारी एक संस्करण 1 v1 फिर से शुरू टोकन का उपयोग करते हैं। संस्करण 4.0.7 में अपग्रेड करते समय परिवर्तन स्ट्रीम को फिर से शुरू करने से पहले क्लाइंट को अपग्रेड के पूरा होने तक प्रतीक्षा करने की सलाह दी जाती है।
- स्टेजिंग एनवायरनमेंट चेक :सुनिश्चित करें कि उत्पादन परिवेश को अपग्रेड करने से पहले सभी कॉन्फ़िगरेशन अच्छी तरह से सेट किए गए हैं और वे उस नए संस्करण के साथ संगत होंगे जिसे आप अपग्रेड करना चाहते हैं।
- प्राथमिक -माध्यमिक -आर्बिटर (PSA) आर्किटेक्चर :MongoDB संस्करण 3.6 और इसके बाद के संस्करण डिफ़ॉल्ट रूप से "बहुमत" पढ़ने की चिंता के लिए समर्थन सक्षम करते हैं। हालाँकि, इस कॉन्फ़िगरेशन के परिणामस्वरूप भंडारण कैश दबाव हो सकता है और इसे रोकने का एकमात्र तरीका इस पैरामीटर को अक्षम करना है। फिर भी, इस पैरामीटर को अक्षम करने से अधिक चिंताएँ उत्पन्न हो सकती हैं अर्थात:
- शार्क किए गए क्लस्टर पर लेनदेन के लिए समर्थन इसमें प्रभावित होगा:
- अगर किसी शार्ड ने "बहुसंख्यक" पढ़ने की चिंता को अक्षम कर दिया है, तो यह एक से अधिक शार्क को लिखने वाले लेन-देन के लिए एक त्रुटि देगा।
- पढ़ें चिंता "स्नैपशॉट" का उपयोग एक ऐसे लेनदेन के लिए नहीं किया जा सकता है जिसमें पढ़ने की चिंता "बहुमत" अक्षम है
- colMod कमांड जो किसी इंडेक्स को रोल बैक से संशोधित करने के लिए जिम्मेदार हैं, काम नहीं करेंगे। यह निर्देश देता है कि यदि किसी ऑपरेशन को वापस रोल करने की आवश्यकता है, तो प्रभावित नोड्स को फिर से सिंक करने के लिए प्राथमिक नोड का उपयोग करना चाहिए।
- MongoDB 4.0 और पुराने संस्करणों के लिए परिवर्तन स्ट्रीम के लिए समर्थन भी अक्षम कर दिया जाएगा।
- प्रतिकृति सेट लेनदेन इस पैरामीटर के अक्षम होने से प्रभावित नहीं होते हैं।
- शार्क किए गए क्लस्टर पर लेनदेन के लिए समर्थन इसमें प्रभावित होगा:
उन्नयन की प्रक्रिया
- अपने डेटा का बैकअप लें।
- आधिकारिक MongoDB पैकेज के साथ सिस्टम पैकेज मैनेजमेंट टूल का उपयोग करके mongod/mongos बाइनरी को अलग से अपग्रेड करें। आप इन प्रक्रियाओं का उपयोग करके मौजूदा बायनेरिज़ को नए बायनेरिज़ के साथ बदलकर मोंगो को अपग्रेड कर सकते हैं:
- MongoDB बायनेरिज़ को उस संशोधन के लिए डाउनलोड करें जिसे आप अपग्रेड करना चाहते हैं और डाउनलोड की गई संपीड़ित फ़ाइल को एक अस्थायी स्थान पर संग्रहीत करें।
- इंस्टेंस बंद करें।
- मौजूदा MongoDB बायनेरिज़ को बदलने के लिए डाउनलोड की गई बायनेरिज़ का उपयोग करें।
- इंस्टेंस को फिर से शुरू करें।
- अगर किसी रेप्लिका सेट को अपग्रेड करना है, तो सेकेंडरी और प्राइमरी लास्ट से शुरू करके प्रत्येक सदस्य को अलग-अलग अपग्रेड करें। सेकेंडरी अपग्रेड करने के लिए:
- मोंगॉड बाइनरी अपग्रेड करें
- सेकेंडरी के सेकेंडरी स्टेट में रिकवर होने की प्रतीक्षा करें और इसके खत्म होने के बाद, अगले इंस्टेंस को अपग्रेड करें। rs.status() का उपयोग मोंगो शेल में सदस्य की स्थिति की जांच के लिए किया जाता है। RECOVERING और STARTUP स्थितियाँ दिखाई दे सकती हैं लेकिन आपको तब तक प्रतीक्षा करनी होगी जब तक कि यह SECONDARY में ठीक न हो जाए।
- प्राथमिक को अपग्रेड करते समय:
- एक मोंगो शेल में सामान्य फेलओवर शुरू करने के तरीके के रूप में प्राइमरी को नीचे ले जाने के लिए rs.stepDown() का उपयोग करें। चूंकि इस अवधि के दौरान कोई भी लेख स्वीकार नहीं किया जाएगा, इसलिए सलाह दी जाती है कि कम से कम समय में अपग्रेड करें।
- जब तक आप यह न देखें कि कोई अन्य सदस्य प्राथमिक के रूप में चुना गया है, तब तक शटडाउन प्राथमिक के बायनेरिज़ को अपग्रेड करें।
- अपग्रेड पूरा होने के बाद प्राइमरी को फिर से शुरू करें लेकिन अगर आप इसकी स्थिति, rs.status() चेक करते हैं, तो इसे सेकेंडरी लेबल किया जा सकता है।
- MongoDB 4.4 साझा क्लस्टर के लिए अपग्रेड करने के लिए:
- सुनिश्चित करें कि बैलेंसर अक्षम कर दिया गया है।
- कॉन्फ़िगरेशन सर्वर को उसी तरह अपग्रेड करें जैसे आपने रेप्लिका सेट को अपग्रेड किया था।
- शार्ड को संबंधित प्रक्रिया का उपयोग करके अपग्रेड करें, जैसे कि रेप्लिका सेट या एक स्टैंडअलोन।
- प्रत्येक मोंगोस इंस्टेंस को क्रम में अपग्रेड करें।
- बैलेंसर को फिर से सक्षम करें।
निष्कर्ष
समय के साथ डेटा अधिक जटिल हो जाता है इसलिए उन्नत डेटाबेस सुविधाओं की आवश्यकता होती है जो डेटाबेस प्रशासकों के विनिर्देशों को पूरा कर सकें। MongoDB इस पर पीछे नहीं पड़ता है क्योंकि यह हमेशा निश्चित बग या नई एकीकृत सुविधाओं के साथ डेटाबेस संस्करण जारी करता है। अधिकतम प्रदर्शन के लिए हमेशा नवीनतम MongoDB संस्करण में अपग्रेड करने की अनुशंसा की जाती है। फिर भी, अपग्रेड करने से पहले किसी को उस संस्करण के रिलीज़ नोट्स की जांच करनी होगी जिसे आप अपग्रेड करना चाहते हैं यदि यह आपके सिस्टम के अनुकूल है। संबंधित MongoDB ड्राइवरों को अपग्रेड करना भी उचित है।