MongoDB indexelő bemutató példával

a MongoDB indexe egy speciális adatszerkezet, amely néhány dokumentummező adatait tárolja, amelyeken az index létrejön. Az indexek javítják a keresési műveletek sebességét az adatbázisban, mert a teljes dokumentum keresése helyett a keresés csak néhány mezőt tartalmazó indexeken történik. Másrészt a túl sok index akadályozhatja a beszúrási, frissítési és törlési műveletek teljesítményét az indexek által használt további írási és további adattér miatt.

Hogyan hozzunk létre indexet a MongoDB-ben

szintaxis:

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

az 1 érték növekvő sorrendre, a -1 pedig csökkenő sorrendre vonatkozik.

például van egy gyűjteményem studentdata. A gyűjteményben található dokumentumok a következő mezőkkel rendelkeznek:
student_name, student_id és student_age

tegyük fel, hogy növekvő sorrendben szeretném létrehozni az indexet a student_name mezőben:

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

kimenet:

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

MongoDB index létrehozása

létrehoztuk az indexet a student_name-en, ami azt jelenti, hogy ha valaki a student_name alapján keres a dokumentumban, a keresés gyorsabb lesz, mert az indexet fogják használni ehhez a kereséshez. Tehát ez fontos az index létrehozásához azon a mezőn, amelyet gyakran keresnek egy gyűjteményben.

MongoDB-az indexek keresése egy gyűjteményben

használhatjuk a getIndexes () módszert a gyűjteményen létrehozott összes index megtalálásához. Ennek a módszernek a szintaxisa:

db.collection_name.getIndexes()

tehát a studentdata gyűjtemény indexeinek megszerzéséhez a következő parancsot kell megadni:

> db.studentdata.getIndexes()

a kimenet azt mutatja, hogy két indexünk van ebben a gyűjteményben. Az _id-en létrehozott alapértelmezett index és a student_name-en létrehozott index.

MongoDB-csepp indexek egy gyűjteményben

vagy eldobhat egy adott indexet, vagy az összes indexet.

egy adott index eldobása:
erre a célra a dropIndex() módszert használjuk.

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

lets csepp az index, hogy hoztunk létre student_name mező a gyűjteményben studentdata. A parancs erre:

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

MongoDB Drop Index
nIndexesWas: megmutatja, hogy hány Index volt a parancs végrehajtása előtt
ok: 1: Ez azt jelenti, hogy a parancs sikeresen végrehajtásra került.

az összes index eldobása:
a gyűjtemény összes indexének eldobásához a dropIndexes() módszert használjuk.
szintaxis dropIndexs () módszer:

db.collection_name.dropIndexes()

tegyük fel, hogy el akarjuk dobni a studentdata gyűjtemény összes indexét.

db.studentdata.dropIndexes()

MongoDb az összes index leejtése

a “non-_id indexek leejtése gyűjtésre” üzenet azt jelzi, hogy az alapértelmezett index _id továbbra is megmarad, és nem dobható le. Ez azt jelenti, hogy ezzel a módszerrel csak az általunk létrehozott indexeket tudjuk eldobni, a _id mezőben létrehozott alapértelmezett indexet nem.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.