एक प्रतिकृति सेट कंप्यूटर का एक सेट है जो एक दूसरे के क्लोन होते हैं। (अर्थात:प्रतिकृतियां ) किसी दिए गए सेट के भीतर एक निर्वाचित मास्टर होता है। डिफ़ॉल्ट रूप से पढ़ता और लिखता है इस निर्वाचित मास्टर के पास जाता है और प्रतिकृतियां अप-टू-डेट प्रतियां होने के लिए परिवर्तनों को "पूंछ" देती हैं। यदि मास्टर विफल हो जाता है, तो एक नया चुना जाता है और सिस्टम चलता रहता है। दस्तावेज़ीकरण यहां है ।
तो आप MongoDB के साथ स्केलिंग के बारे में पूछते हैं। स्केलिंग दो प्रकार की होती है:
रेप्लिका सेट के लिए न्यूनतम कॉन्फ़िगरेशन है- 2 पूर्ण प्रतिकृतियां- 1 आर्बिटर (हल्का प्रक्रिया, मतदान के समय संबंध तोड़ता है)
शेयरिंग के लिए न्यूनतम कॉन्फिगरेशन है- 1 कॉन्फिग सर्वर- 1 mongod
प्रक्रिया (केवल एक शार्क)- 1 या अधिक मोंगोस
(आम तौर पर ऐप सर्वर पर)
हालांकि, आप शायद इस तरह उत्पादन में नहीं चलना चाहते हैं। केवल एक डीबी चलाने का मतलब है कि आपके पास डेटा के लिए केवल एक स्रोत है जिसके परिणामस्वरूप बड़े डाउन-टाइम या कुल डेटा हानि हो सकती है। यह आमतौर पर प्रतिकृति सेट का उपयोग करके हल किया जाता है।
इसके अतिरिक्त, कॉन्फिग सर्वर काफी महत्वपूर्ण है। MongoDB 1 या 3 कॉन्फ़िगरेशन सर्वर का समर्थन करता है। अधिकांश उत्पादन परिनियोजन 3 का उपयोग करते हैं। ध्यान दें कि कॉन्फ़िगरेशन सर्वर और आर्बिटर बहुत हल्के होते हैं और अन्य बॉक्स या अमेज़ॅन माइक्रो इंस्टेंस पर रह सकते हैं।
शार्डिंग के साथ अधिकांश उत्पादन परिनियोजन में प्रतिकृति सेट भी शामिल होते हैं। वास्तव में, वे आमतौर पर प्रतिकृति सेट के रूप में शुरू होते हैं।
एक शार्डिंग दृष्टिकोण से इसे चाहिए जितना आसान हो:- नया शार्ड सर्वर शुरू करें- एडशर्ड
mongos
. से कमांड
ध्यान दें कि जब आप एक शार्क जोड़ते हैं, तो आपको समय और संसाधनों की अनुमति देनी होगी क्योंकि डेटा शार्क के बीच माइग्रेट होता है और सब कुछ फिर से संतुलित हो जाता है।