Erstellen Sie Indizes in MongoDB

Shraddha Paghdar 20 Juni 2023
Erstellen Sie Indizes in MongoDB

Indizes helfen bei der effektiven Auflösung von Abfragen. Ohne Indizes muss MongoDB jedes Dokument in einer Sammlung durchsuchen, um diejenigen zu finden, die der Abfrage entsprechen.

Es kann Zeit verschwenden und erfordert, dass MongoDB solche Informationen verarbeitet. Im heutigen Artikel lernen wir also, wie man Indizes in MongoDB erstellt.

Erstellen Sie einen Index in MongoDB

Indizes sind spezialisierte Datenstrukturen, die eine begrenzte Teilmenge des Datensatzes in einem zugänglichen Format halten. Der Wert eines bestimmten Felds oder einer Sammlung von Feldern wird im Index gespeichert, sortiert nach dem Wert des Felds, wie im Index angegeben.

MongoDB unterstützt verschiedene Arten von Indizes. Single Field, Compound Index, Multikey Index, Geospatial Index, Hashed Index und Clustered Index sind einige der Indizes.

Syntax:

db.COLLECTION.createIndex({ KEY_NAME:1 })
  1. KEY_NAME ist der Feldname, auf dem Sie einen Index erstellen möchten.
  2. Der vorherige Punkt zeigt an, dass die Reihenfolge aufsteigend sein sollte. Daher müssen Sie -1 verwenden, um einen Index in absteigender Reihenfolge zu erstellen.
  3. Die Methode createIndex() akzeptiert eine Liste optionaler Argumente. Die Auflistung ist unten.
    • eindeutig ist eine boolesche Variable, die einen eindeutigen Index erstellt und verhindert, dass die Sammlung das Einfügen von Dokumenten akzeptiert, deren Indexschlüssel oder -schlüssel bereits vorhanden sind. Um einen eindeutigen Index zu erstellen, geben Sie true ein. Der Standardwert ist auf false gesetzt.
    • Die boolesche Variable background baut den Index im Hintergrund auf, sodass andere Datenbankoperationen nicht behindert werden. Um im Hintergrund zu konstruieren, geben Sie true an. Der Standardwert ist auf false gesetzt.
    • Wenn die boolesche Variable sparse auf true gesetzt ist, verweist der Index nur auf Dokumente mit dem angegebenen Feld. Obwohl diese Indizes weniger Platz beanspruchen, können sie sich anders verhalten (insbesondere sortieren). false ist die Standardeinstellung.
    • Die String-Variable name enthält den Namen des Indexes. Wenn kein Indexname angegeben wird, erstellt MongoDB einen, indem die Namen der indizierten Felder und die Sortierreihenfolge verknüpft werden.
    • Die String-Variable default language ist die Sprache, die die Liste der Stoppwörter und die Kriterien für stemmer und tokenizer für einen Textindex festlegt.
    • Die Integer-Variable expireAfterSeconds definiert einen time-to-live (TTL)-Wert in Sekunden, um zu begrenzen, wie lange MongoDB die Dokumente in dieser Sammlung aufbewahrt.

Weitere Informationen zu .createIndex() finden Sie hier. Lassen Sie uns das folgende Beispiel verwenden, um die erwähnte Idee zu verstehen:

> db.users.createIndex({ "email": 1, "country": -1 })

Im obigen Beispiel haben wir einen neuen zusammengesetzten Index erstellt, in dem email in absteigender Reihenfolge gespeichert ist und Land in aufsteigender Reihenfolge sortiert ist. Jedes Mal, wenn eine Abfrage ausgeführt wird, sortiert der Index zunächst nach email des Benutzers, bevor innerhalb jedes email-Werts nach Land sortiert wird.

Shraddha Paghdar avatar Shraddha Paghdar avatar

Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.

LinkedIn

Verwandter Artikel - MongoDB Index