अक्सर दावा किया जाता है कि मोंगोडब बहुत तेजी से लिखता है। जबकि वे वास्तव में धीमी नहीं हैं, यह काफी अधिक है। मोंगोडब में थ्रूपुट लिखें वैश्विक लेखन लॉक द्वारा सीमित है। हां, आपने मुझे सही सुना है, केवल एक किसी भी पल में सर्वर पर हो रहा है लिखना ऑपरेशन हो सकता है।
यह भी सुझाव है कि आप मोंगोडब की स्कीमालेस प्रकृति का लाभ उठाएं और अपने डेटा को denormalized स्टोर करें। प्रायः एक डिस्क केवल सभी आवश्यक डेटा लाने के लिए करना संभव है (क्योंकि यह सब एक ही दस्तावेज़ में है)। कम डिस्क चाहता है - तेजी से पूछताछ।
यदि डेटा रैम में बैठता है - कोई डिस्क की आवश्यकता नहीं है, तो डेटा मेमोरी से सही तरीके से परोसा जाता है। तो, सुनिश्चित करें कि आपके पास पर्याप्त रैम है।
Map/Reduce, group, $where प्रश्न धीमे हैं।
उदाहरण के लिए, $push
का उपयोग करके, एक बड़े दस्तावेज़ को लिखना तेज़ नहीं है। दस्तावेज़ अपनी डिस्क सीमाओं को बढ़ा देगा और उसे दूसरी जगह पर कॉपी करना होगा, जिसमें अधिक डिस्क ऑपरेशंस शामिल होंगे।
और मैं @AurelienB से सहमत हूं, कुछ बुनियादी सिद्धांत सभी डेटाबेस में सार्वभौमिक हैं।
स्रोत
2011-12-19 14:14:08
जो मैंने आपको सुना है वह है "मोंगोडब बहुत तेज़ व्यक्ति लिखता है, लेकिन लॉक सिस्टम आपको एक समय में एक तक सीमित करता है।" क्या यह शेरिंग के साथ भी लागू होता है? – Abe
नहीं, sharding इस मुद्दे को कम करता है। प्रत्येक शार्ड को अपना ताला मिलता है। –