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

मोंगोडब और नोडज में मॉडलिंग ब्लॉग और रेटिंग

MongoDB (और अन्य गैर-संबंधपरक डेटा स्टोर) के साथ एक अच्छा अभ्यास अपने डेटा को मॉडल करना है ताकि आपके एप्लिकेशन में इसका उपयोग/क्वेरी करना आसान हो। आपके मामले में, आप संरचना को थोड़ा सा असामान्य करने पर विचार कर सकते हैं और रेटिंग को सीधे ब्लॉग संग्रह में संग्रहीत कर सकते हैं, इसलिए एक ब्लॉग कुछ इस तरह दिख सकता है:

{
  title: "My New Post",
  body: "Here's my new post. It is great. ...",
  likes: 20,
  dislikes: 5,
  ...
  rates: [
    { client_id: (id of client), rate: 5 },
    { client_id: (id of another client), rate: 3 },
    { client_id: (id of a third client), rate: 10 }
  ]
}

विचार यह है कि rates . में ऑब्जेक्ट सरणी में वह सभी डेटा होता है जिसकी आपको ब्लॉग प्रविष्टि को प्रदर्शित करने के लिए, रेटिंग के साथ पूर्ण, एक ही दस्तावेज़ में प्रदर्शित करने की आवश्यकता होगी। यदि आपको किसी अन्य तरीके से भी दरों को क्वेरी करने की आवश्यकता है (उदाहरण के लिए उपयोगकर्ता X द्वारा बनाई गई सभी रेटिंग खोजें), और साइट पढ़ने के लिए भारी है, तो आप भी पर विचार कर सकते हैं डेटा को rates . में संग्रहित करना संग्रह जैसा कि आप अभी कर रहे हैं। निश्चित रूप से, डेटा दो स्थानों पर है, और इसे अपडेट करना कठिन है, लेकिन आपके द्वारा अपने ऐप का विश्लेषण करने और यह आपके डेटा को कैसे एक्सेस करता है, इसके बाद यह एक समग्र जीत हो सकती है।

ध्यान दें कि आप किसी दस्तावेज़ की संरचना में अनुक्रमणिका लागू कर सकते हैं, इसलिए उदाहरण के लिए आप News.rates.client_id को अनुक्रमित कर सकते हैं , और फिर आप News . में किसी भी दस्तावेज़ को तुरंत ढूंढ सकते हैं संग्रह जिसे किसी विशेष उपयोगकर्ता ने रेट किया है।




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. मोंगोडीबी जावा - नेस्टेड ऐरे को धक्का दे रहा है?

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

  3. स्प्रिंग डेटा मोंगो पेजिनेशन

  4. जावास्क्रिप्ट मोमेंटज यूटीसी को स्ट्रिंग से डेट ऑब्जेक्ट में परिवर्तित करते हैं

  5. MongoDB डेटा को CSV प्रारूप में कैसे निर्यात करें?