जर्नल फ़ाइलों के 3GB के बिना एक MongoDB कॉन्फ़िगरेशन सर्वर चलाएँ


9

एक उत्पादन के लिए MongoDB इंस्टॉलेशन की आवश्यकता है, हमें 3 कॉन्फ़िगरेशन सर्वर चाहिए। प्रलेखन के अनुसार "कॉन्फिग सर्वर मोंगॉड प्रक्रिया काफी हल्की है और इसे अन्य कार्य करने वाली मशीनों पर चलाया जा सकता है"। हालाँकि, डिफ़ॉल्ट कॉन्फ़िगरेशन में, वे सभी जर्नलिंग सक्षम हैं, और प्रचार के साथ यह 3 GB डिस्क स्थान लेता है। मुझे लगता है कि एक कॉन्फिग सर्वर का वास्तविक डेटा और ट्रांजेक्शन वॉल्यूम काफी छोटा है, जिससे यह थोड़ा बहुत लगता है।

वहाँ एक तरीका है (सुरक्षित रूप से!) के लिए बहुत कम डिस्क उपयोग के साथ इन विन्यास सर्वर चलाते हैं? क्या मुझे कॉन्फ़िगर सर्वरों पर जर्नलिंग की आवश्यकता है? क्या मैं जर्नल का आकार छोटा कर सकता हूं?

जवाबों:


10

हां - कुछ फ़ाइलों के अधीन जर्नल फ़ाइलों के डिफ़ॉल्ट आकार को कम करने का एक तरीका है। से MongoDB विन्यास प्रलेखन :

डिस्क के उपयोग पर जर्नलिंग के प्रभाव को कम करने के लिए, आप डेटा को सक्षम करने के लिए जर्नल छोड़ सकते हैं, और डेटा और जर्नल फ़ाइलों के आकार को कम करने के लिए smallfiles को सही पर सेट कर सकते हैं।

यहाँ smallfilesविन्यास जानकारी है:

छोटे डिफ़ॉल्ट डेटा फ़ाइल आकार का उपयोग करने के लिए MongoDB को संशोधित करने के लिए सही पर सेट करें। विशेष रूप से, छोटे फाइल डेटा फ़ाइलों के लिए प्रारंभिक आकार को कम कर देता है और उन्हें 512 मेगाबाइट तक सीमित करता है। स्मॉलफाइल्स सेटिंग प्रत्येक जर्नल फ़ाइलों के आकार को 1 गीगाबाइट से 128 मेगाबाइट तक कम करती है।

यदि आपके पास बड़ी संख्या में ऐसे डेटाबेस हैं, जिनमें से प्रत्येक में थोड़ी मात्रा में डेटा है, तो स्मॉलफाइल्स सेटिंग का उपयोग करें। स्मॉलफाइल्स सेटिंग कई फाइलों को बनाने के लिए मोंगॉड का नेतृत्व कर सकती है, जो बड़े डेटाबेस के लिए प्रदर्शन को प्रभावित कर सकती है।


0

आप प्रतिकृति के कुछ सदस्य, जर्नलिंग का उपयोग कर सकते हैं और अन्य नहीं। [1]

आप कमांड लाइन "--smallfiles" का उपयोग करके छोटे आकार को छोटा कर सकते हैं। [2]


और क्या इसकी कोई सिफारिश की गई है?
थिलो

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

1
यह निश्चित रूप से एक अच्छा दिशानिर्देश है। लेकिन पूछताछ करने वाले दिमाग जानना चाहते हैं कि क्या किसी कॉन्फिगर सर्वर में ट्रांजेक्शन वॉल्यूम है, जिसे 3GB जर्नल की जरूरत है, और अगर क्रैश के बाद तेजी से स्टार्टअप समय के अलावा अन्य सभी पत्रिकाओं के होने का कोई लाभ है (ध्यान दें कि 3 कॉन्फिगर सर्वर के साथ, नहीं होना चाहिए जर्नलिंग के बिना भी कोई भी डेटा हानि हो सकती है, ठीक है?) और कितनी भी तेज़ हो केवल थोड़ी मात्रा में ही-केवल डेटा के साथ। यह मुझे लगता है कि यहां के नियम प्रतिकृति नोड्स और कॉन्फ़िगरेशन सर्वर के लिए अलग-अलग होने चाहिए। डॉक्स कहते हैं कि "आपको ठीक होना चाहिए अगर आप एक दिन में उनमें से किसी एक को पुनर्प्राप्त कर सकते हैं" उदाहरण के लिए।
थिलो

0

आप -nojournal विकल्प के साथ मोंगॉड शुरू कर सकते हैं, लेकिन मैं आपके कॉन्फिग सर्वर बैकअप के बारे में बहुत निश्चित हूं।


1
तीन अलग-अलग मशीनों पर तीन कॉन्फिग सर्वर होने की तुलना में मुझे कितना अधिक निश्चित होना चाहिए? इसके अलावा, विन्यास सर्वर का बैकअप बनाने के लिए क्या प्रक्रिया है? अगर मैं हर बदलाव के बाद बैकअप नहीं लेता (कहो कलेक्शन जोड़ा या शार्डिंग इवेंट), तो मैं इन पुराने बैकअप से उबर नहीं सकता, है ना?
थिलो
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.