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 })
KEY_NAME
ist der Feldname, auf dem Sie einen Index erstellen möchten.- 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. - 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 Sietrue
ein. Der Standardwert ist auffalse
gesetzt.- Die boolesche Variable
background
baut den Index im Hintergrund auf, sodass andere Datenbankoperationen nicht behindert werden. Um im Hintergrund zu konstruieren, geben Sietrue
an. Der Standardwert ist auffalse
gesetzt. - Wenn die boolesche Variable
sparse
auftrue
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ürstemmer
undtokenizer
für einen Textindex festlegt. - Die Integer-Variable
expireAfterSeconds
definiert einentime-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 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