Šis raksts ir mašīntulkošanas spoguļraksts, lūdzu, noklikšķiniet šeit, lai pārietu uz oriģinālo rakstu.

Skats: 5609|Atbildi: 2

MongoDB indeksu skatīšana un izveide

[Kopēt saiti]
Publicēts 11.02.2022 17:46:29 | | | |
MongoDB indekss

Bez indeksiem MongoDB būtu jāskenē katrs kolekcijas fails un jāizvēlas tie ieraksti, kas atbilst vaicājuma kritērijiem, lasot datus.

Šāda veida vaicājumu efektivitāte pilna komplekta skenēšanā ir ļoti zema, it īpaši, apstrādājot lielu datu apjomu, vaicājums var aizņemt desmitiem sekunžu vai pat minūšu, kas ir ļoti liktenīgs vietnes veiktspējai.

Indeksi ir īpašas datu struktūras, kas tiek glabātas datu kolekcijā, ko var viegli nolasīt indeksā, un indeksi ir struktūra, kas kārto vienas vai vairāku kolonnu vērtības datu bāzes tabulā.

Pārskats:

MongoDB kopējās vaicājumu komandas
https://www.itsvse.com/thread-10169-1-1.html

Izpildes plāna vaicājums

Paziņojumu piemēri:

Neizveidojot indeksu (winningPlan:COLLSCAN), kā parādīts zemāk redzamajā attēlā:



Funkcija explain() var saņemt arī dažādus parametrus, un detalizētāku vaicājuma plānu var skatīt, iestatot dažādus parametrus.

Parametri ietver:queryPlanner (noklusējums)、executionStats、allPlansExecution

Izpildiet explain ("executionStats") un jūs atradīsiet, ka izpildes plānā ir vairāk statistikas.

Parametrunozīme
totalKeysPārbaudītsIndeksa skenēšanas skaits
totalDocsPārbaudītsDokumentu skenēšanas gadījumu skaits
nAtgrieztsAtgriezto rezultātu skaits
executionTimeMillisIzpilde ir laikietilpīga
izpildePanākumiVai izpilde bija sekmīga

Indeksa izveide

MongoDB indeksu izveidei izmanto metodi createIndex().

Ņemiet vērā, ka pirms versijas 3.0.0 indeksa izveides metode bija db.collection.ensureIndex(), bet jaunākās versijās tika izmantota metode db.collection.createIndex().

Vienota indeksa izveide


Salikta indeksa izveide

Sintaksē atslēgas vērtība ir indeksa lauks, kuru vēlaties izveidot, 1 ir norādīts, lai izveidotu indeksu augošā secībā, un, ja vēlaties izveidot indeksu dilstošā secībā, varat norādīt -1.Fons, lai norādītu, ka indeksi tiek veidoti fonā, tas ir, pievienojiet izvēles parametru "fons". "fons" pēc noklusējuma ir false.

Vaicājumu indeksi

Komanda ir šāda:



Indeksa dzēšana

Visu indeksu dzēšana

Norādītā indeksa dzēšana

(Beigas)




Iepriekšējo:Kā ierobežot Taivānas lietotāju reģistrāciju, ievietot informāciju pēc vēlēšanās un lūgt padomu, kā rakstīt.
Nākamo:[Faktiskā cīņa]. NET/C# eksportē kešatmiņu, izmantojot StackExchange.Redis izplūdušo vaicājumu
 Saimnieks| Publicēts 11.02.2022 17:49:16 |
Lēns vaicājumu analīzes process:

1. Izmantojiet lēno vaicājumu žurnālu (system.profile), lai atrastu paziņojumus, kas pārsniedz 200 ms

2. Pēc tam izmantojiet .explain (), lai analizētu ietekmēto rindu skaitu un analizētu, kāpēc tas pārsniedz 200 ms

3. Izlemiet, vai jums ir jāpievieno indekss

Iespējot lēnu vaicājumu:


Parametru:

0: Slēgts, dati netiek apkopoti.
1: Apkopojiet lēnus vaicājuma datus, noklusējums ir 100 milisekundes.
2: Apkopojiet visus datus

Pārskatiet rezultātus:


Piezīme: Indeksi būtībā var teikt, ka tie ir pastāvīgi atmiņā, ja datu apjoms sasniedz 100 miljonus, jo mazāks ir indeksu skaits, jo labāk, jo tas aizņems lielu atmiņas daudzumu. Saskaņā ar interneta datiem 1 miljons indeksu veido aptuveni 50 miljonus atmiņas. Ja tas ir 100 miljoni, tad tas aizņems 5G atmiņu.

Publicēts 13.02.2022 16:30:52 |
Uzzināju...
Atruna:
Visa programmatūra, programmēšanas materiāli vai raksti, ko publicē Code Farmer Network, ir paredzēti tikai mācību un pētniecības mērķiem; Iepriekš minēto saturu nedrīkst izmantot komerciāliem vai nelikumīgiem mērķiem, pretējā gadījumā lietotājiem ir jāuzņemas visas sekas. Informācija šajā vietnē nāk no interneta, un autortiesību strīdiem nav nekāda sakara ar šo vietni. Iepriekš minētais saturs ir pilnībā jāizdzēš no datora 24 stundu laikā pēc lejupielādes. Ja jums patīk programma, lūdzu, atbalstiet oriģinālu programmatūru, iegādājieties reģistrāciju un iegūstiet labākus oriģinālus pakalpojumus. Ja ir kādi pārkāpumi, lūdzu, sazinieties ar mums pa e-pastu.

Mail To:help@itsvse.com