|
|
Zveřejněno 11.02.2022 17:46:29
|
|
|
|

Index MongoDB
Bez indexů by MongoDB musel prohledat každý soubor v kolekci a vybrat ty záznamy, které splňují kritéria dotazu při čtení dat.
Tento druh efektivity dotazů při prohledávání celé sady je velmi nízký, zejména při zpracování velkého množství dat, dotaz může trvat desítky sekund nebo dokonce minuty, což je velmi škodlivé pro výkon webu.
Indexy jsou speciální datové struktury uložené v souboru dat, které lze snadno přečíst přes index, a indexy jsou struktura, která třídí hodnoty jednoho nebo více sloupců v databázové tabulce.
Přezkoumání:
Dotazujte se na plán provedení
Příklady tvrzení:
Bez vytvoření indexu (winningPlan:COLLSCAN), jak je znázorněno na obrázku níže:
funkce explain() může také přijímat různé parametry a můžete zobrazit podrobnější plán dotazu nastavením různých parametrů.
Parametry zahrnují:queryPlanner (výchozí)、Statistiky exekuce、všechny plányRealizace
Execute explain("executionStats") a zjistíte, že v plánu provádění je více statistik.
| parametr | význam | | totalKeysExamined | Počet indexových skenů | | totalDocsExamined | Počet skenů dokumentů | | nVráceno | Počet vrácených výsledků | | executionTimeMillis | Provádění je časově náročné | | RealizaceÚspěch | Zda byla poprava úspěšná |
Vytvořte index
MongoDB používá metodu createIndex() pro vytváření indexů.
Všimněte si, že před verzí 3.0.0 byla metoda vytváření indexu db.collection.ensureIndex(), a pozdější verze používaly metodu db.collection.createIndex().
Vytvořte jeden index
Vytvořte složený index
V syntaxi je klíčová hodnota pole indexu, které chcete vytvořit, 1 je určeno pro vytvoření indexu vzestupně, a pokud chcete vytvořit index sestupně, můžete zadat -1.pozadí pro specifikaci, že indexy jsou vytvářeny na pozadí, tedy přidat volitelný parametr "background". "background" se výchozím nastavením nastaví na false.
Indexy dotazů
Příkaz je následující:
Smažte index
Smažte všechny indexy
Smažte zadaný index
(Konec)
|
Předchozí:Jak omezit tchajwanské uživatele v registraci, zveřejňování informací podle libosti a žádání o rady, jak psát.Další:[Skutečný boj]. NET/C# exportuje cache pomocí StackExchange.Redis fuzzy query
|