sql >> Databáze >  >> NoSQL >> MongoDB

jak funguje Mongodb index?

Na pořadí polí v indexu záleží; nejlepší složený index pro váš příklad hledání a řazení by ve skutečnosti byl:

db.test.ensure_index([("xxx",1),("_id",-1)])

Vzhledem k tomu, že vaše kritéria vyhledávání jsou v poli 'xxx', umístěním tohoto pole na první místo v indexu najdete více výsledků než vyhledávání podle _id a poté filtrování na dokumenty odpovídající vašemu xxx kritéria.

Pokud se podíváte na n číslo pro každý plán zvažovaný optimalizátorem dotazů v allPlans , BtreeCursor xxx_1 index ve skutečnosti vrací nejvíce výsledků (34). Ostatní indexy vracejí výsledky 9, 10 a 16, takže by byly méně efektivní pro daná vyhledávací kritéria.

Pro více informací o optimalizaci indexu je velmi užitečný tento článek:Optimalizace složených indexů MongoDB .




  1. rmongodb:pomocí $nebo v dotazu

  2. klient mongodb verze 3.0.0 robomongo mongovue

  3. MongoDB a ovladač Java:ignorujte malá a velká písmena v dotazu

  4. Účel a popis seznamu klientů Redis