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

पिमोंगो उप-दस्तावेजों में मूल्य पाते हैं

@AnthonyWinzlet द्वारा पोस्ट किए गए उत्तर में नकारात्मक पक्ष यह है कि इसे उपयोगकर्ता संग्रह में सभी दस्तावेज़ों के माध्यम से मंथन करने और $lookup निष्पादित करने की आवश्यकता है। जो अपेक्षाकृत महंगा है। तो आपके Users . के आकार के आधार पर संग्रह ऐसा करने के लिए यह तेज़ हो सकता है:

  1. users.pet पर एक इंडेक्स डालें और users.car :db.users.createIndex({pet: 1, car: 1})
  2. cars.model पर एक इंडेक्स लगाएं :db.cars.createIndex({model: 1})
  3. एक अनुक्रमणिका pets.name पर रखें :db.pets.createIndex({name: 1})

तब आप बस यह कर सकते थे:

  1. सभी मिलान करने वाली सूची प्राप्त करें "Tesla" कारें:db.cars.find({model: "Tesla"})
  2. सभी मिलान करने वाली सूची प्राप्त करें "Mickey" पालतू जानवर:db.pets.find({name: "Mickey"})
  3. उन उपयोगकर्ताओं को ढूंढें जिनमें आप रुचि रखते हैं:db.users.find({car: { $in: [<ids from cars query>] }, pet: { $in: [<ids from pets query>] }})

यह पढ़ने और समझने में बहुत आसान है, साथ ही सभी तीन प्रश्न पूरी तरह से अनुक्रमित हैं, इसलिए उनसे उम्मीद की जा सकती है कि चीजें जितनी जल्दी हो सकें उतनी तेजी से हो सकती हैं।



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. भू-नियर के साथ नेवला एकत्रीकरण

  2. जांचें कि क्या MongoDB अप्सर्ट ने एक इंसर्ट या अपडेट किया है

  3. क्या मैं MongoDB में कुल क्वेरी में प्रत्येक के लिए आवेदन कर सकता हूं?

  4. ClusterControl सामुदायिक संस्करण के साथ मुक्त खुला स्रोत डेटाबेस परिनियोजन और निगरानी

  5. स्वचालित MongoDB बैकअप