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

अनुक्रमण पर प्रभाव mongodb _id पीढ़ी

एक बेहतर समाधान यह होगा कि _id . को छोड़ दिया जाए कॉलम जैसा है वैसा ही है और अलग userId . है और फ़ोल्डर आईडी अपने दस्तावेज़ में फ़ील्ड, या उन दोनों को मिलाकर एक अलग फ़ील्ड बनाएँ।

जैसे कि यह "जितना तेज़" होगा ... आपकी क्वेरी पर निर्भर करता है, लेकिन उदाहरण के लिए दस्तावेज़ की "बनाने" तिथि तक ऑर्डर करने के लिए आप केवल _id द्वारा ऑर्डर करने की क्षमता खो देंगे आप शार्डिंग और वितरण के लाभों को भी खो देंगे। ।

हालांकि यदि आप उन दोनों आईडी का उपयोग अपनी _id . के लिए करना चाहते हैं एक और विकल्प है...

आप वास्तव में दोनों का उपयोग कर सकते हैं लेकिन उन्हें अलग छोड़ दें ... उदाहरण के लिए यह एक मान्य _id . है :

> var doc = { "_id" : { "userID" : 12345, "folderID" : 5152 }, 
              "field1" : "test", "field2" : "foo" };
> db.crazy.save(doc);
> db.crazy.findOne();
{
        "_id" : {
                "userID" : 12345,
                "folderID" : 5152
        },
        "field1" : "test",
        "field2" : "foo"
}
> 


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. वर्तमान डेटाबेस को प्रोग्रामेटिक रूप से कैसे प्राप्त करें Mongoid लिख रहा है?

  2. SQL DB की तुलना में MongoDB बहुत तेज़ क्यों है, इसके लिए कोई विस्तृत और विशिष्ट कारण?

  3. rmongodb के साथ MongoDB प्रतिकृति सेट से कनेक्ट करना

  4. वर्सेल हर अनुरोध के लिए नया डीबी कनेक्शन बनाता है

  5. MongoDB बैकअप योजना