MongoDB – Indexeringshandledning med exempel

ett index i MongoDB är en speciell datastruktur som innehåller data för få fält av dokument som indexet skapas på. Index förbättrar hastigheten på sökoperationer i databasen eftersom istället för att söka i hela dokumentet, sökningen utförs på index som innehåller endast ett fåtal fält. Å andra sidan kan för många index hindra prestanda för infoga, uppdatera och ta bort operationer på grund av det extra skriv-och ytterligare datautrymme som används av index.

hur man skapar index i MongoDB

Syntax:

db.collection_name.createIndex({field_name: 1 or -1})

värdet 1 är för stigande ordning och -1 är för fallande ordning.

till exempel har jag en samling studentdata. Dokumenten i denna samling har följande fält:
student_name, student_id och student_age

Låt oss säga att jag vill skapa index på student_name-fältet i stigande ordning:

db.studentdata.createIndex({student_name: 1})

Output:

{ "createdCollectionAutomatically" : false, "numIndexesBefore" : 1, "numIndexesAfter" : 2, "ok" : 1}

MongoDB skapa index

Vi har skapat indexet på student_name vilket innebär att när någon söker i dokumentet baserat på student_name, kommer sökningen att bli snabbare eftersom indexet kommer att användas för denna sökning. Så det här är viktigt att skapa indexet på fältet som ofta söks i en samling.

MongoDB-hitta index i en samling

vi kan använda getIndexes () metod för att hitta alla index som skapats på en samling. Syntaxen för denna metod är:

db.collection_name.getIndexes()

så för att få indexerna för studentdata samling, skulle kommandot vara:

> db.studentdata.getIndexes()

utmatningen visar att vi har två index i denna samling. Standardindexet som skapats på _id och det index som vi har skapat på fältet student_name.

MongoDB-släpp index i en samling

Du kan antingen släppa ett visst index eller alla index.

släppa ett specifikt index:
för detta ändamål används dropIndex () – metoden.

db.collection_name.dropIndex({index_name: 1})

låter släppa index som vi har skapat påstudent_name fält i samlingenstudentdata. Kommandot för detta:

db.studentdata.dropIndex({student_name: 1})

MongoDB Drop Index
nIndexesWas: det visar hur många index som fanns där innan detta kommando kördes
ok: 1: Det betyder att kommandot körs framgångsrikt.

släppa alla index:
för att släppa alla index i en samling använder vi dropIndexes () – metoden.
Syntax av dropIndexs () metod:

db.collection_name.dropIndexes()

Låt oss säga att vi vill släppa alla index för studentdata samling.

db.studentdata.dropIndexes()

MongoDb släppa alla index

meddelandet ”icke-_id index tappade för insamling” indikerar att standardindexet _id fortfarande kommer att finnas kvar och kan inte tappas. Det betyder att vi med den här metoden bara kan släppa index som vi har skapat, vi kan inte släppa standardindexet som skapats på _id-fältet.

Lämna ett svar

Din e-postadress kommer inte publiceras.