MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Dlaczego MongoDB nie używa przecięcia indeksu?

Niektóre szczegóły dotyczące wyboru indeksu znajdują się w Problem JIRA SERVER-3071 ale nie mogę powiedzieć, czy wszystko jest nadal aktualne w wersji 3.0. W każdym razie:

MongoDB 3.0.2 wydaje się nie uwzględniaj interakcji indeksu dla zakresu zapytanie. Ale to będzie dla interwałów punktowych:

> db.orders.find( { item: {$eq : "abc123"}, qty: { $eq: 15 } } ).explain()
...

        {
            "stage" : "FETCH",
            "inputStage" : {
                "stage" : "KEEP_MUTATIONS",
                "inputStage" : {
                    "stage" : "AND_SORTED",
                    "inputStages" : [
                        {
                            "stage" : "IXSCAN",
                            "keyPattern" : {
                                "qty" : 1
                            },
                            "indexName" : "qty_1",
                            "isMultiKey" : false,
                            "direction" : "forward",
                            "indexBounds" : {
                                "qty" : [
                                    "[15.0, 15.0]"
                                ]
                            }
                        },
                        {
                            "stage" : "IXSCAN",
                            "keyPattern" : {
                                "item" : 1
                            },
                            "indexName" : "item_1",
                            "isMultiKey" : false,
                            "direction" : "forward",
                            "indexBounds" : {
                                "item" : [
                                    "[\"abc123\", \"abc123\"]"
                                ]
                            }
                        }
                    ]
                }


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Nodejs Paginacja

  2. Błąd uwierzytelniania żagli-mongo w żaglach 0,10

  3. Serializuj jedną klasę na dwa różne sposoby z Jacksonem

  4. Jak programowo wykonać polecenie mongodump z node.js?

  5. Jak mogę dodać dwukolumnowy unikalny identyfikator do mongodb w aplikacji meteor?