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

$elemMatch . के लिए MongoDB अनुक्रमणिका

आपकी क्वेरी के आधार पर, मुझे लगता है कि आपके दस्तावेज़ कुछ इस तरह दिखाई देंगे:

{
    "_id" : 1,
    "lc" : "eng",
    "group" : "xyz",
    "indices" : [
        {
            "text" : "as",
            "pos" : 2
        }, 
        {
            "text" : "text",
            "pos" : 4
        }
    ]
}

मैंने इस प्रारूप के दस्तावेजों के साथ एक परीक्षण संग्रह बनाया, सूचकांक बनाया, और उस क्वेरी को चलाया जिसे आपने .explain() विकल्प के साथ पोस्ट किया था।

इंडेक्स का इस्तेमाल उम्मीद के मुताबिक किया जा रहा है:

> db.test.ensureIndex({"lc":1, "group":1, "indices.text":1, "indices.pos":1})
> db.test.find({ lc: "eng", group: "xyz", indices: { $elemMatch: { text: "as", pos: { $gt: 1 } } } }).explain()
{
    "cursor" : "BtreeCursor lc_1_group_1_indices.text_1_indices.pos_1",
    "isMultiKey" : true,
    "n" : NumberLong(1),
    "nscannedObjects" : NumberLong(1),
    "nscanned" : NumberLong(1),
    "scanAndOrder" : false,
    "indexOnly" : false,
    "nYields" : 0,
    "nChunkSkips" : NumberLong(0),
    "millis" : 0,
    "indexBounds" : {
        "lc" : [
            [
                "eng",
                "eng"
            ]
        ],
        "group" : [
            [
                "xyz",
                "xyz"
            ]
        ],
        "indices.text" : [
            [
                "as",
                "as"
            ]
        ],
        "indices.pos" : [
            [
                {
                    "$minElement" : 1
                },
                {
                    "$maxElement" : 1
                }
            ]
        ]
    },
    "server" : "Marcs-MacBook-Pro.local:27017"
}

.explain() सुविधा पर प्रलेखन यहां पाया जा सकता है:http://www.mongodb .org/display/DOCS/Exlain

.explain() का उपयोग किसी क्वेरी के बारे में जानकारी प्रदर्शित करने के लिए किया जा सकता है, जिसमें (यदि कोई हो) अनुक्रमणिका का उपयोग किया जाता है।




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. ClusterControl में डेटाबेस ऑपरेशनल रिपोर्टिंग का अवलोकन

  2. मतदान के लिए मोंगो डेटा मॉडलिंग/अपडेट (ऊपर और नीचे)

  3. एकल दस्तावेज़ स्ट्रिंग सरणी फ़ील्ड के साथ सर्वर साइड पेजिनेशन

  4. एक सीमा पर MongoDB एकत्रीकरण

  5. MongoDB:क्या सार्वजनिक रूप से दस्तावेज़ की आईडी का उपयोग करना सुरक्षित है?