MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

क्या हमें रीड-हैवी एप्लिकेशन में dbref या एम्बेडेड दस्तावेज़ का उपयोग करना चाहिए

पारंपरिक संबंधपरक प्रणालियों में डीबीआरएफ विदेशी कुंजी की तरह कुछ भी नहीं है। यह केवल एक सम्मेलन है जो आसानी से एक ड्राइवर (जो सक्षम है) को उन संदर्भित दस्तावेजों को स्वत:लोड करने के लिए कहता है। कृपया देखें DBRef इस बारे में अधिक जानकारी के लिए।

उपयोग किए गए ड्राइवर के आधार पर, आप केवल उन संदर्भों को स्वचालित रूप से लोड करने में सक्षम हो सकते हैं जब आपको उनकी आवश्यकता होती है (आलसी), इसलिए प्रदर्शन ओवरहेड वास्तव में छोटा होना चाहिए। लेकिन स्टोरेज ओवरहेड किसी अन्य दस्तावेज़ के साधारण संदर्भित _id से थोड़ा अधिक है। मूल रूप से, मैं कहूंगा कि आपको केवल उन DBrefs का उपयोग करना चाहिए यदि लिंक किया गया दस्तावेज़ चर प्रकार का हो सकता है। यदि यह स्थिर है तो आप _id-references और शायद अपनी आलसी लोडर कार्यक्षमता से फंस गए हैं, इसलिए आप स्वयं को दोहराएं नहीं।

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

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




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. C# .Net . में MongoDB संग्रहीत जावास्क्रिप्ट फ़ंक्शन को कॉल करें

  2. चहचहाना क्लोन के लिए सर्वश्रेष्ठ MongoDB स्कीमा?

  3. MongoDB db.Collection.count ()

  4. मोंगो एकत्रीकरण:गिनती के लिए आपत्ति करने के लिए $ समूह और $ प्रोजेक्ट सरणी

  5. मोंगोडीबी $atanh