Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 5609|Válasz: 2

MongoDB Indexek megtekintése és létrehozása

[Linket másol]
Közzétéve 2022. 02. 11. 17:46:29 | | | |
MongoDB index

Indexek nélkül a MongoDB-nek minden fájlt át kell szkennelnie a gyűjteményben, és kiválasztania azokat a rekordokat, amelyek megfelelnek a lekérdezési kritériumoknak, amikor adatokat olvas.

Ez a teljes halmaz lekérdezési hatékonysága nagyon alacsony, különösen nagy mennyiségű adat feldolgozása esetén, a lekérdezés akár több tíz másodpercet vagy akár perceket is igénybe vehet, ami nagyon végzetes a weboldal teljesítményére.

Az indexek speciális adatstruktúrák, amelyeket egy adatgyűjteményben tárolnak, és könnyen olvashatók egy indexen, az indexek pedig olyan struktúrák, amelyek egy vagy több oszlop értékeit rendezik az adatbázis táblájában.

Szemle:

MongoDB common query commands
https://www.itsvse.com/thread-10169-1-1.html

Lekérdezés a végrehajtási terv

Példa állítások:

Indexet (winningPlan:COLLSCAN) létrehozás nélkül, ahogy az alábbi ábrán látható:



Az explain() függvény különböző paramétereket is kaphat, és részletesebb lekérdezési tervet is megtekinthetsz különböző paraméterek beállításával.

A paraméterek a következők:queryPlanner (alapértelmezett)、executionStats、allPlansExecution

Execute explain("executionStats"), és látni fogod, hogy több statisztika van a végrehajtási tervben.

paraméterjelentés
totalKeysExaminedIndexvizsgálatok száma
totalDocsExaminedDokumentumszkennelések száma
nVisszatértA visszahozott eredmények száma
executionTimeMillisA végrehajtás időigényes
kivégzésSikerSikeres volt-e a kivégzés

Hozz létre egy indexet

A MongoDB a createIndex() módszert használja indexek létrehozásához.

Megjegyzendő, hogy a 3.0.0 verzió előtt az index létrehozási módszer db.collection.ensureIndex() volt, a későbbi verziók pedig a db.collection.createIndex() módszert használták.

Hozzon létre egyetlen indexet


Hozzon létre egy összetett indexet

A szintaxisban a kulcsérték az a indexmező, amit létrehozni szeretnél, az 1 az indexet növekvő sorrendben létrehozni, és ha csökkenő sorrendben akarsz indexet létrehozni, megadhatod -1-et.háttér annak meghatározására, hogy indexek a háttérben készülnek létre, vagyis hozzáadni a "background" opcionális paramétert. "background" alapértelmezés szerint hamis.

Lekérdezési indexek

A parancs a következő:



Töröld az indexet

Minden indexet törölj

Töröld a megadott indexet

(Vége)




Előző:Hogyan lehet korlátozni a tajvani felhasználók regisztrációját, hogyan posztoljon meg akaratot az információkat, és kérjen tanácsot az íráshoz.
Következő:[Valódi harc]. A NET/C# exportálja a gyorsítótárt a StackExchange.Redis fuzzy query segítségével
 Háziúr| Közzétéve 2022. 02. 11. 17:49:16 |
Lassú lekérdezéselemzési folyamat:

1. Használd a lassú lekérdezési naplót (system.profile) a 200 ms feletti utasítások megtalálására

2. Ezután a .explain() segítségével elemezd az érintett sorok számát, és megvizsgáld, miért haladja meg a 200 ms-t

3. Döntsd el, hogy szükséges-e indexet hozzáadni

Lassú lekérdezés engedélyezése:


Paraméter:

0: Lezárva, nem gyűjtenek adatokat.
1: Lassú lekérdezési adatokat gyűjt, az alapértelmezett 100 milliszekundum.
2: Gyűjtsd össze az összes adatot

Nézze át az eredményeket:


Megjegyzés: Az indexek lényegében állandónak mondhatók a memóriában, ha az adatmennyiség eléri a 100 milliót, minél kisebb az indexek, annál jobb, mert nagy mennyiségű memóriát foglalnak el. Az internet szerint 1 millió index körülbelül 50 millió memóriát jelent. Ha 100 millió, akkor 5G memóriát foglal el.

Közzétéve 2022. 02. 13. 16:30:52 |
tanult...
Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com