mongodb database profiler
Lär dig allt om MongoDB Database Profiler för övervakning av databasfrågor och prestanda:
I denna F ree MongoDB utbildningsserie , vi lärde oss om MongoDB-prestanda i vår tidigare handledning.
I den här handledningen lär vi oss allt om MongoDB Database Profiler i detalj.
Databasprofiler används för att samla in information om frågor som körs på en enskild databasinstans.
Om du arbetar med en applikation på företagsnivå och om du har utfört frågor samtidigt, kanske du i vissa frågor måste möta en dödläge.
För att identifiera frågan där du står inför dödläget eller någon form av problem finns det en funktion som heter profiler. MongoDB tillhandahåller också den här funktionen för att spela in loggen för en enskild fråga som körs. Dessa loggar registrerar alla grova operationer tillsammans med konfigurations- och hanteringskontroller.
Som standard spelas all data in i system.profiler samling i MongoDB-admininstansen.
Profilen är inaktiverad på grund av den höga minneskonsumtionen som standard. Det finns tre olika nivåer av profilen för att registrera informationen om frågorna och du kan enkelt ställa in vilken profilnivå som helst på vilken som helst instans av MongoDB.
Vad du kommer att lära dig:
- Aktivera och konfigurera profilering för databaser
- Kontrollera profileringsnivån
- Inaktivera profilering
- Overhead Profiler
- Ändra storleken på system.profilen Primär samling
- Slutsats
- Rekommenderad läsning
Aktivera och konfigurera profilering för databaser
Databasprofiler aktiveras av profilkommandot med hjälp av mongo-skalet. När du aktiverar profiler för att logga posten för körning av frågan måste du nämna nivån på profileringen. Med hjälp av följande kod kommer vi att möjliggöra profilering för MongoDB.
Syntax
db.setProfilingLevel(LEVEL)
Koda
db.setProfilingLevel(2)
Figur 1: I Mongo Shell
Figur 2: I Robo 3T
I bilden ovan kan du se att det finns fyra resultat. I det första fältet visas den tidigare använda profilnivån och det sista fältet indikerar att operationen har lyckats.
Kontrollera profileringsnivån
För att förhandsgranska den aktuella nivån på profilen måste du använda följande kod.
Koda
db.getProfilingStatus()
Den visar dig den aktuella och tidigare använda profileringsstatusen.
Figur 3: I Mongo Shell
hur man gör en hög i java
Figur 4: I Robo 3T
- var den aktuella profileringsnivån.
- saktar ner fältet visar driftstidsgränsen i millisekunder.
- Samplingshastighet visar procentandelen långsamma operationer som ska profileras.
För att bara få profileringsnivån kan du använda db.getProfilingLevel () i mongoskalet.
Koda
db.getProfilingLevel()
Figur 5: I Mongo Shell
hur man öppnar .dat-filen på Windows
Figur 6: I Robo 3T
Inaktivera profilering
Om du vill inaktivera profilen kan du använda följande kod för att stoppa loggningen av frågekörningsinformationen.
Koda
db.setProfilingLevel(0)
Figur 7: I Mongo Shell
Figur 8: I Robo 3T
Overhead Profiler
När du loggar in posten för frågekörning eller om du använder profilen, skulle det troligen påverka prestandan för frågekörningen. Som standard har profilsamlingen 1 MB som ett minne för att lagra informationen.
Om du har en enorm applikation och mycket transaktionsdata kommer det att vara overhead att lagra mycket information som en profil.
Ändra storleken på system.profilen Primär samling
Innan du ändrar system.profiles samlingsstorlek måste du göra följande:
- Inaktivera profilering
- Släpp insamlingssystemet. Profil
- Skapa en ny.profilsystemsamling
- Återaktivera profilering
Koda
db.setProfilingLevel(0) db.system.profile.drop() db.createCollection( 'system.profile', { capped: true, size:4000000 } ) db.setProfilingLevel(1)
Figur 9: I Mongo Shell
Figur 10: I Robo 3T
Slutsats
MongoDB-databasprofiler används för att övervaka frågorna och deras prestanda inom MongoDB-instansen. Vi kan övervaka frågor på olika nivåer av profilering som vi diskuterade i föregående handledning.
I denna handledning har vi framgångsrikt lärt oss hur man byter profilnivå och hur vi kan inaktivera dem enligt våra krav. Vi kan också ställa in den önskade tröskeln för att lagra profilerposten.
Vår kommande handledning kommer att förklara för dig om användarskapande och tilldelning av roller i MongoDB !!
PREV-handledning | NÄSTA självstudie
Rekommenderad läsning
- MongoDB-prestanda: Låsning av prestanda, sidfel och databasprofilering
- MongoDB Skapa säkerhetskopia av databas
- MongoDB Skapa databashandledning
- Databastestning med JMeter
- MongoDB Sort () -metod med exempel
- 20+ MongoDB-handledning för nybörjare: Gratis MongoDB-kurs
- Användarautentisering i MongoDB
- Vad är MongoDB-replikering