Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> डेटाबेस

MongoDB के साथ बड़े पैमाने पर स्केलिंग का परिचय

मूल रूप से 4 जून 2018 को ObjectRocket.com/blog पर प्रकाशित

हम स्केलिंग . को परिभाषित कर सकते हैं मछली से तराजू को हटाने के रूप में। हालांकि, डेटाबेस के साथ, स्केलिंग भंडारण, डिस्क, रैम, सीपीयू, गणना चक्र, नेटवर्किंग, या अन्य संसाधनों के आसपास अतिरिक्त जरूरतों को पूरा करने के लिए विस्तार करने की क्षमता को संदर्भित करता है।

MongoDB के साथ बड़े पैमाने पर स्केलिंग का परिचय

आप कैसे जानते हैं कि यह कब स्केल करने का समय है?

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

सक्रिय रूप से स्केलिंग

जब आप सक्रिय रूप से स्केल करने की योजना बनाते हैं तो कम से कम दो सामान्य पैटर्न हो सकते हैं:

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

हमारी पोस्ट पढ़ें:कैसे निर्धारित करें कि आपके MongoDB उदाहरणों को मापने का सही समय कब है।

प्रतिक्रियाशील रूप से स्केलिंग

यदि आप बाधाओं का सामना करते हैं और आप आगे बढ़ने की उम्मीद करते हैं, तो आपको स्केलिंग के बारे में सोचने की जरूरत है।

परेशानी के संकेतों में निम्नलिखित चिंताओं जैसी चीजें शामिल हैं:

  • अंतिम उपयोगकर्ताओं के लिए क्वेरी समय में वृद्धि
  • प्रवेश समय में वृद्धि
  • अनुरोध और सर्वर फ्रीज हो रहे हैं
  • डेवलपर्स से डेटाबेस शिकायतें
  • धीमा सर्वर प्रतिक्रिया समय
  • होस्ट पर बढ़ा हुआ भार
  • स्मृति से बाहर त्रुटियां
  • अनपेक्षित चुनाव
  • लॉग में त्रुटियां

जब आप इन संकेतों को देखना शुरू करते हैं, तो मांग को पूरा करने के लिए स्केलिंग शुरू करने का समय आ गया है और सुनिश्चित करें कि आप ग्राहकों को नहीं खो रहे हैं।

आप लंबवत स्केल कर सकते हैं (ऊपर) या क्षैतिज रूप से (बाहर)

MongoDB के साथ बड़े पैमाने पर स्केलिंग का परिचय

लंबवत स्केलिंग

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

लंबवत स्केल करने के कई तरीके आज उपलब्ध हैं। उनमें से कुछ विकल्पों में बेहतर कमोडिटी हार्डवेयर, सस्ता डिस्क और स्टोरेज, बेहतर स्टोरेज विकल्प, सस्ती मेमोरी, बेहतर सॉफ्टवेयर और नेटवर्किंग शामिल हैं ताकि आप विफलताओं और रुकावटों को और अधिक सुंदर ढंग से संभाल सकें।

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

क्षैतिज रूप से स्केलिंग

साझाकरण क्षैतिज स्केलिंग है। शेयरिंग डेटा को कई नोड्स में संग्रहीत करता है, लोड और प्रक्रियाओं को मेजबानों में वितरित करता है। आवश्यकतानुसार अतिरिक्त नोड्स जोड़ने की क्षमता के साथ प्राथमिक-प्रतिकृति मॉडल का उपयोग करके प्रतिकृति को नियंत्रित किया जाता है।

लोड बैलेंसर नोड्स पर डिस्क में डेटा का हिस्सा बांटता है।

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

जब आप क्षैतिज रूप से स्केल करते हैं, तो आप भौतिक या वर्चुअल होस्ट के साथ संसाधन जोड़ते हैं।

  • भौतिक - बहुत कम लागत वाले कमोडिटी हार्डवेयर
  • वर्चुअल - VMs या क्लाउड का उपयोग करके अतिरिक्त CPU कोर या नोड्स जोड़ें
  • नेटवर्किंग - लोड बैलेंसर्स, अतिरिक्त mongoS® प्रक्रियाएं, और इसी तरह जोड़ें

लोड बैलेंसर्स का उपयोग करके ट्रैफ़िक को उस स्थान तक पहुँचाने के लिए बेहतर लोड बैलेंसिंग तकनीकों (हार्डवेयर और सॉफ़्टवेयर) का उपयोग करना जहाँ उसे जाने की आवश्यकता है।

आप MongoDB में रेप्लिका सेट के साथ स्केलिंग कैसे लागू करते हैं?

MongoDB एक प्राथमिक . के साथ एकल बड़े प्रतिकृति सेट का उपयोग करके क्षैतिज रूप से स्केल आउट कर सकता है और दो सेकेंडरी ऊपर या नीचे राज्य के लिए दिल की धड़कन संचार है। परिचालन रसद के माध्यम से सेकेंडरी पर प्रतिकृति होती है।

क्षैतिज स्केलिंग:रेप्लिका सेट या शार्डिंग?

शार्डिंग के साथ व्यापार बंद समग्र जटिलता में वृद्धि हुई है। लेकिन रखरखाव को सरल बनाकर शेरिंग भी लाभ प्रदान करता है। यह रोलिंग अपग्रेड की अनुमति देता है और आपको कुछ ऑपरेशन करने देता है जैसे इंडेक्स आपके शार्ड और नोड्स में समानांतर में बनाता है। निम्नलिखित बड़े प्रतिकृति सेट बनाम शार्ड क्लस्टर के बीच कुछ तुलनाएं हैं:

प्रतिकृति सेट साझा करना
सरल विशेषज्ञता की आवश्यकता
विस्तृत डेटा सेट में बहुत कुछ पढ़ता है (संग्रहों को तितर-बितर नहीं करना चाहता) बहुत सारे लेख और अपडेट (परिणामों के लिए सीधे सटीक शार्प पर जाना चाहते हैं)
बहुत सारा डेटा, कम गतिविधि दर बहुत सारा डेटा, बहुत सारी गतिविधि
और चाहिए सामान्य संसाधन, जैसे कि डिस्क डिस्क, RAM, CPU, राइट स्कोप सहित सभी संसाधनों की अधिक आवश्यकता है

ऑब्जेक्टरॉकेट से प्रबंधित MongoDB क्यों चुनें?

रैकस्पेस ऑब्जेक्ट रॉकेट का अर्थ है विशेषज्ञता . हमने गेट-गो से बड़े पैमाने पर MongoDB को प्रबंधित किया है। हम बड़े प्रतिकृति सेटों के लिए समर्थन प्रदान करते हैं, और हम बड़े शार्प किए गए MongoDBक्लस्टर के लिए समर्थन प्रदान करने वाले पहले प्रदाताओं में से एक थे। हमारे इंजीनियरों और डीबीए के पास अनुभव है और उन्होंने बहुत जटिल बाधाओं को पार कर लिया है - ऐसी बाधाएं जो आमतौर पर अन्य प्रदाताओं के लिए अनसुनी हैं।

मार्केटिंग टेक्नोलॉजी वर्टिकल (मोबाइल एनालिटिक्स, मीडिया, ईमेल कैंपेन, मोबाइल विज्ञापन धोखाधड़ी का पता लगाने और डिजिटल मीडिया) में हमारे कुछ सबसे बड़े ग्राहक अक्सर ऐसे बग मारते हैं जिन्हें कोई और नहीं देखता या ठीक करना नहीं जानता। विभिन्न ग्राहकों के अरबों संदेश और दस्तावेज़, हज़ारों बड़े और छोटे अभियान—हमारा मंच उन सभी को होस्ट करता है।

हमारे द्वारा प्रदान की जाने वाली सेवा में शामिल हैं:

  • बुनियादी ढांचा
  • भंडारण
  • आईओपीएस
  • नेटवर्क
  • सर्वश्रेष्ठ हैंड्स-ऑन सपोर्ट, हैंड्स-डाउन। 24×7 सही प्रतिक्रिया।

योजनाएं और मूल्य देखें।

हमारा लक्ष्य ऐसे क्लाउड समाधान प्रदान करना है जो पूरी तरह से मजबूत सेटअप प्रदान करते हैं और आपकी सेकेंडरी . का प्रावधान नहीं करते हैं आभासी संस्करणों पर। इस प्रकार हम प्रदर्शन के मुद्दों से बचते हैं जो चुनाव होने पर उत्पन्न हो सकते हैं और आपकी प्राथमिक कम मजबूत मेजबानों पर समाप्त होता है जो केवल माध्यमिक के लिए प्रावधान किया जाता है। स्केलिंग के लिए यही है। अपने MongoDB इंस्टेंस को कब मापना है, इसके बारे में अधिक जानना न भूलें, शार्डिंग टिप्स, सर्वश्रेष्ठ शार्ड कुंजियों का चयन, और बहुत कुछ।

रैकस्पेस डीबीए सेवाओं के बारे में अधिक जानें।

कोई भी टिप्पणी करने या प्रश्न पूछने के लिए फीडबैक टैब का उपयोग करें। आप विक्रय चैट . पर भी क्लिक कर सकते हैं अभी चैट करने और बातचीत शुरू करने के लिए।


  1. MongoDB के साथ स्केलिंग:एक शार्डिंग इन्फ्रास्ट्रक्चर की स्थापना

    हाल ही में एक ब्लॉग पोस्ट में, मैंने चर्चा की कि आपको MongoDB को कब स्केल करना है। इस पोस्ट में, मोंगोडीबी को स्केल करने के तरीके पर ध्यान केंद्रित किया गया है। MongoDB संस्करण 3.0 ने WiredTiger को डिफ़ॉल्ट स्टोरेज इंजन के रूप में पेश किया। स्केलेबिलिटी की बात करें तो MongoDB दो दृष्टिकोण प्रदान कर

  1. MongoDB इंस्टेंसेस को कब स्केल करना है

    पिछले ब्लॉग पोस्ट में, हमने MongoDB के साथ बड़े पैमाने पर स्केलिंग का परिचय दिया था। स्केलिंग प्रकृति में प्रतिक्रियाशील हो जाती है, जिससे खराब एप्लिकेशन प्रदर्शन या इससे भी बदतर, कुल एप्लिकेशन डाउनटाइम जैसी समस्याएं होती हैं। ये मुद्दे अंततः नकारात्मक ग्राहक अनुभव की ओर ले जाते हैं जो आपके व्यवसाय

  1. RoboMongo और ObjectRocket के साथ MongoDB को विज़ुअलाइज़ करना

    MongoDB Inc. ने MongoDB के रिलीज़ 2.6 के साथ कई बेहतरीन नई एंटरप्राइज़ सुविधाएँ पेश की हैं, हालाँकि, एक चीज़ जो अभी भी अनुपस्थित है, वह है आपके डेटाबेस को प्रबंधित करने के लिए एक डेस्कटॉप एप्लिकेशन। पेश है रोबोमोंगो, क्रॉस-प्लेटफ़ॉर्म और ओपन सोर्स मोंगोडीबी मैनेजमेंट टूल। निम्नलिखित निर्देशों के साथ