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

मुझे उपयोगकर्ता या अलग से एम्बेडेड, मोंगोडब में गतिविधियों की समयरेखा कहां रखनी चाहिए?

वे दोनों लेख सही हैं और दोनों गलत हैं।

एम्बेड करना है या नहीं एम्बेड करना है? यह हमेशा महत्वपूर्ण प्रश्न होता है और यह आपकी आवश्यकताओं, पूछताछ और भंडारण और यहां तक ​​कि आपके काम करने के सेट के लिए भी आता है।

दिन के अंत में हम केवल संकेत दे सकते हैं आप वास्तव में आपको नहीं बता सकते कि कौन सा सबसे अच्छा है।

हालाँकि, एक गतिविधि फ़ीड के आकार को देखते हुए मैं व्यक्तिगत रूप से इसे एम्बेड नहीं करूँगा क्योंकि यह आसानी से पिछले 16meg (प्रति उपयोगकर्ता) तक बढ़ सकता है, हालाँकि क्वेरी करने की गति और शक्ति के लिए, आप एक उपयोगकर्ता की अंतिम 20 गतिविधियों को जोड़ सकते हैं और फिर एम्बेड कर सकते हैं। कि उपयोगकर्ता पंक्ति में (चूंकि अंतिम 20 सामान्य रूप से सबसे अधिक पूछताछ की जाती है)।

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

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

इसे ध्यान में रखते हुए मैं उपयोगकर्ता पर एक समग्रता रखूंगा जिसका अर्थ है कि उपयोगकर्ता एक राउंड ट्रिप के साथ अपनी खुद की या अन्य उपयोगकर्ता गतिविधि एकवचन देख सकता है।

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

उम्मीद है कि इससे आपको शुरुआत करनी चाहिए।



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. क्यों MongoDB – 2022 के लिए MongoDB सीखने के 10 कारण

  2. मोंगोडीबी $isoDayOfWeek

  3. क्या MongoDB कॉन्फ़िग फ़ाइल में पर्यावरण चर जोड़ना संभव है?

  4. NodeJS/नेवला/MongoDB - खींचो (सरणी से) काम नहीं कर रहा

  5. MongoDB Node.js मूल चालक चुपचाप `बल्कराइट` अपवाद निगल लेता है