Die Indizierung von Feldern hilft wirklich bei der Arbeit an großen Datenbanken. Zum Beispiel muss die Abfrage nicht nach der gesamten Sammlung für ein Dokument suchen. Es sucht nur nach Indizes und zeigt das Ergebnis an. Unser heutiger Artikel ist Teil der MongoDB -Serie und wir werden den Weg zum Erstellen eines Index in MongoDB zeigen.
Wie das Indizierungsphänomen in MongoDB funktioniert
Die Indizes in MongoDB werden auf Feldern erstellt und die folgende Syntax muss angewendet werden, um einen Index in MongoDB zu erstellen:
Syntax
db.Sammlungsname.createIdex (:)Der <Feldname> bezieht sich auf das Gebiet einer Sammlung, für die Sie einen Index erstellen möchten, und der <Befehl> zeigt auf eine aufsteigende oder absteigende Reihenfolge der Dokumente beim Erstellen eines Index. Für aufsteigende Reihenfolge “,“1”Wird verwendet und "-1" wird zur absteigenden Reihenfolge verwendet.
So erstellen Sie einen Index in MongoDB
Die Indexierung in MongoDB wird hauptsächlich ausgeübt, um die Verarbeitung in MongoDB voranzutreiben. Die MongoDB -Sammlung, die wir hier ansprechen werden, heißt hierMitarbeiter,Und die dadurch enthaltenen Dokumente sind:
> db.Mitarbeiter.finden().hübsch()In den kommenden Abschnitten werden die oben abgestellten Daten zum Ausführen von Befehlen verwendet.
Die am häufigsten verwendeten Indextypen in MongoDB sind:
Einzelindex: Wird verwendet, um nur auf ein Feld eines Dokuments in einer Sammlung zu verweisen
Zusammengesetzter Index: Das bezieht sich auf mehrere Felder
Multikey Index: Speziell verwendet, um einen Index für Array -Datenfelder zu erstellen
So erstellen Sie einen einzelnen Feldindex
Der Einzelfeldindex bedeutet, dass ein Index in einem einzelnen Feld eines Dokuments erstellt wird. Mit dem folgenden Befehl erstellen Sie einen Index für die “Name"Feld der"Mitarbeiter" Sammlung:
> db.Mitarbeiter.createIdex (name: 1)Die Ausgabe zeigt, dass vor diesem Befehl nur ein Index vorhanden war, und nach der Ausführung des Befehls wurde die Gesamtzahl der Indizes 2.
Darüber hinaus können Sie den Namen auf jeden Index festlegen, den Sie erstellen. Zum Beispiel wird der folgende Befehl einen Namen festlegen “Index für STD -Namen„:
> db.Mitarbeiter.createIndex (name: -1, name: "index on student name")Notiz: Das "1" oder "-1In den obigen Befehlen zeigen die aufsteigenden oder absteigenden Reihenfolge des Index.
So erstellen Sie den zusammengesetzten Index
Sie können auch einen Index erstellen, indem Sie sich auf zwei Felder beziehen. Der unten geschriebene Befehl erstellt einen Index auf “Name" Und "Desig" des "Mitarbeiter" Sammlung:
> db.Mitarbeiter.createIdex (name: -1, desig: 1)Notiz: Mit Hilfe des hier verwendeten zusammengesetzten Index sucht MongoDB zunächst nach dem “Name"Feld in Ascending und danach sortiert es das Dokument nach dem"Desig”[Bezeichnung] Feld in absteigender Reihenfolge.
So erstellen Sie einen Multikey -Index
Wie bereits erwähnt, wird der Multikey -Index verwendet, um einen Index für ein Array -Feld zu erstellen. MongoDB erstellt einen Multikey -Index, wenn ein Array -Feld anging CreateIndex (). Es wird bemerkt, dass Sie nicht erwähnen müssen, dass es sich um ein Array -Feld handelt. Stattdessen die CreateIndex () Funktion erkennt automatisch das Array.
In unserem Fall das “Mitarbeiter"Die Sammlung enthält ein Array -Feld namens"KatzeDas repräsentiert die Kategorie des Betriebssystems, mit der ein bestimmter Mitarbeiter verarbeitet.
Der hier angegebene Befehl erstellt Index für jedes Element eines Array -Feldes:
> db.Mitarbeiter.createIdex (cat: 1)So finden Sie Indizes in MongoDB
Nach der Erstellung von Indizes finden Sie alle verfügbaren Indizes in Ihrem System, indem Sie den folgenden Befehl ausgeben:
> db.Mitarbeiter.GetIndexes ()Sie werden feststellen, dass alle im obigen Abschnitt erstellten Indizes hier angezeigt werden.
Wie man einen Index in MongoDB fallen lassen
Um einen bestimmten Index fallen zu lassen, können Sie einer der unten angegebenen Syntaxe folgen:
db.Sammlungsname.DropIndex ()Der <Indexname> Zeigt den Namen an, den Sie einem bestimmten Index zugewiesen haben:
Oder:
db.Sammlungsname.DropIndex (:)Der <Feldname> und <Befehl> Stellen Sie den genauen Feldnamen und die Indexreihenfolge dar, in der er erstellt wurde.
Beispiel: Zum Beispiel entfernen der Befehl am folgenden erwähnten DropIndex () -Methodenbefehl den in der “erstellten Index“Name"Feld und Ordnung war"1“.
Notiz: Alle Indizes, die unter die Kriterien fallen.
> db.Mitarbeiter.DropIndex (Name: 1)Oder Sie können den folgenden Befehl verwenden, um alle Indizes auf Ihrer Sammlung abzugeben.
> db.Mitarbeiter.DropIndexes ()Notiz: Nur der Standardindex des Systems wird zurückgelassen, und der Rest alle werden gelöscht.
Abschluss
MongoDB bietet ein schnelles und effektives Abfragesystem, das von MongoDB Query Language (MQL) unterstützt wird. Während der Abfrage von Dokumenten spielen Indizes eine wichtige Rolle bei der Ausführung der Abfrage in deutlich weniger Zeit. In diesem Artikel haben wir das erklärt "IndexKonzept in MongoDB. Nach dem Lesen dieses Handbuchs können Sie einen Index für a erstellen Einzelfeld, zusammengesetzte Felder, Und Array Fields. Darüber hinaus finden Sie auch die verfügbaren Indizes, und der Weg zum Absetzen eines beliebigen Index wird auch in diesem Beitrag beschrieben.