Topp MongoDB-intervjuspørsmål

Topp Mongodb Intervjusporsmal



MongoDB er et åpen kildekode NoSQL-databasestyringssystem; det gjør det ikke bare enkelt å lagre ustrukturerte data, men administrerer det også. Når spørsmålet dukker opp om hvordan man administrerer millioner av rader med ustrukturerte data, anbefales MongoDB.

MongoDBs første versjon ble utgitt i februar 2007 av 10 gen Programvareselskap, senere i 2013, endret 10gen firmanavnet til MongoDB Inc.

MongoDB er en NoSQL-database som brukes til å lagre data i JSON-dokumentformen på grunn av denne funksjonen, en enorm mengde ustrukturerte data kan enkelt lagres og administreres i MongoDB. Settet med disse dokumentene med dataene er kjent som samlinger. Og disse samlingene ligner på tabellene som brukes i relasjonsdatabaser for å lagre data.







Det er mange grunner til at MongoDB er så populær sammenlignet med andre relasjons- og NoSQL-databaser, noen av dem er:



  • Utviklere kan definere strukturen i henhold til nøkkelverdi-parene
  • I likhet med relasjonsdatabaser er det ikke nødvendig med rader og kolonner for dataene
  • Den hierarkiske MongoDB-strukturen gjør det mulig å lagre data i matriser og kan også lagre komplekse data
  • Det får utviklerne til å administrere databaser enkelt, da det støtter flere programmeringsspråk
  • Den støtter også funksjonene til gridFS og replikering

På grunn av dens popularitet er det mange jobbmuligheter for utviklerne som jobber med MongoDB. Denne artikkelen er relatert til spørsmålene som er viktigst og ofte stilt av mange topprangerte organisasjoner.



MongoDB intervjuspørsmål

De oftest stilte spørsmålene er delt inn i tre nivåer: Grunnnivå, Mellomnivå og Ekspertnivå.





Grunnleggende nivå

Disse spørsmålene er relatert til de grunnleggende konseptene og terminologiene til MongoDB, og i et intervju forventes det at hver kandidat skal svare på disse spørsmålene.

Spørsmål 1: hva vet du om NoSQL-databaser og deres typer?
NoSQL-databaser er de databasene som ikke lagrer data i tabeller slik SQL-databaser gjør i stedet for at de lagrer data i andre former som dokumenter og nøkkelverdiskjemaer.



Det er fire viktige typer NoSQL-databaser:

  • Dokumentdatabaser: Disse databasene lagrer data i form av JSON-dokumenter, disse dokumentene kombineres for å danne samlinger, og disse samlingene kombineres for å danne en database.
  • Nøkkelverdidatabaser: Disse databasene lagrer dataene i form av nøkkelverdier, for eksempel 'Navn = John', i dette eksemplet er 'Navn' nøkkel, og 'John' er verdi.
  • Store kolonner: Disse databasene lagrer data i form av dynamiske tabeller, i motsetning til relasjonsdatabaser er disse tabellene ikke strukturerte.
  • Grafdatabaser: Disse databasene inneholder kanter og noder; noder brukes til å lagre informasjon, mens kanter brukes til å vise relasjoner mellom nodene.

Spørsmål 2: hvilken type NoSQL-database MongoDB er?
MongoDB-databasen tilhører dokumentdatabasene, noe som betyr at den lagrer data i henhold til JSON-dokumentene. Den følger ikke noe skjema og tillater innsetting av alle typer data i den.

Spørsmål 3: Hvilken er best blant MongoDB- og SQL-databaser?
MongoDB er bedre enn SQL-databaser på en slik måte at den kan håndtere ustrukturerte data, mens SQL-databaser kun håndterer strukturerte data og lagrer dem uten noen begrensning i motsetning til relasjonsdatabaser. På grunn av funksjonen til skjemaløs, håndteres spørringer raskt i MongoDB sammenlignet med SQL-databasene, da dataene ikke er plassert i form av tabeller og i et antall tabeller i stedet for det, blir data plassert på samme sted, så det er enkelt for spørringen å få tilgang til dataene, og MongoDB lar dataene kartlegges på andre programmeringsspråk, noe som gjør det enkelt for brukerne å jobbe med dem.

Spørsmål 4: Hva er et dokument og en samling i MongoDB?
Dataene lagres i MongoDB i form av dokumenter, deretter kombineres disse dokumentene for å danne en samling, og en rekke samlinger kombineres for å danne en database. For å forstå dette, vurder et eksempel på en database med skoledata, en database med skoledata inneholder samlinger som har klassedata i seg, og videre inneholder disse dokumentene (klasser_data) dataene til elever (studentdata) i form av dokumenter.

Spørsmål 5: Hva er MongoDB-datatyper?
Det er mange datatyper som MongoDB støtter:

String Strengdatatype lagrer data i form av alfabeter/tegn og må være på 8 byte og tilhøre UTF-8, for eksempel Jone.
Heltall Den lagrer tall opp til 64 bit, men størrelsen kan variere avhengig av serveren, for eksempel 1,54.
boolsk Dette brukes til å lagre boolske verdier som enten kan være 0 eller 1, for eksempel er John i klassen? Svaret er enten ja eller nei.
Dobbelt Dette lagrer flytende tall som 22.8.
Min/Max-taster Den brukes til å sammenligne min og maks verdier.
Matriser Dette brukes til å lagre matriser eller flere verdier i én nøkkel.
Tidsstempel Når et dokument er endret, kan det oppbevare registrene over endringer.
Gjenstand Dette lagrer de innebygde dokumentene
Null Den lagrer nullverdier.
Symbol Dette er typen streng og kan lagre de språkene som er relatert til symbolene
Dato Gjeldende klokkeslett og dato kan lagres i disse datatypene
Objekt-ID Dokumenter har unike IDer, disse IDene kan lagres i denne datatypen
Binære data Binære data som også er kjent som maskinspråk er lagret i den.
Kode Javascript-koder lagres i dokumenter ved hjelp av denne datatypen
Vanlig uttrykk Ethvert uttrykk kan lagres i denne datatypen

Spørsmål 6: Hva er alternativene til MongoDB?
MongoDB er en type NoSQL-database, ved hjelp av hvilken store distribuerte data lagres i BSON-dokumentene. Alternativene til MongoDB kan være Amazon DynamoDB, Microsoft Azure Cosmos DB, Couchbase, PostgreSQL, Redis og Cassandra.

Mellomnivå

Disse spørsmålene er mer knyttet til de avanserte konseptene enn til de grunnleggende og i et intervju forventes det at en gjennomsnittlig kandidat skal svare på disse spørsmålene.

Spørsmål 7: Hvordan kan vi sammenligne MongoDB og SQL på et høyt nivå?
SQL-databaser er relasjonsdatabaser som lagrer data på en godt strukturert og organisert måte i form av rader og kolonner som lager tabeller, på den annen side er MongoDB-databaser NoSQL-databasene, som lagrer data i dokumentene, disse dokumentene er samlet. kjent som samlinger, og disse samlingene kombineres for å danne en database.

Spørsmål 8: Er det noen funksjoner som ACID-transaksjonsadministrasjon og låsing i MongoDB?
Nei, som standard gir MongoDB ingen ACID-transaksjoner på multi-dokumenter, men den kan gi støtte for ACID-transaksjoner på et enkelt dokument.

Spørsmål 9: Hva er indeksering i MongoDB?
I MongoDB er indeksen en spesiell datastruktur som okkuperer noen felt i databasen og inneholder noen data for å lage en indeks. Indeksen forbedrer søkeevnen til databasen, i stedet for å søke etter en bestemt ting fra mange dokumenter, kan en bruker gå direkte til det angitte dokumentet ved hjelp av indeksering.

{
Student ID = 1
Student navn = 'Paul'
Land = 'Forente stater'
}

I eksemplet ovenfor er 'Student_id =1' en indeks, så hvis noen søker enten med Student_id eller 1, vil følgende dokument bli åpnet.

Spørsmål 10: Kan en indeks opprettes på et matrisefelt i MongoDB?

Ja, vi kan lage en indeks på et matrisefelt i MongoDB, og den indekserer hver verdi av matrisen. Faktisk oppretter MongoDB av seg selv flernøkkelindeksen, og du trenger ikke å spesifisere den hvis et indeksfelt er en matrise.

Spørsmål 11: Er det mulig å kjøre flere Javascript-operasjoner i en enkelt MongoDB-forekomst?
Det er mulig å kjøre flere Javascript-operasjoner i en enkelt mongod-forekomst fordi i 2.4-versjonen av MongoDB V8 er javascript-motoren lagt til.

Spørsmål 12: Hva er journalføring i MongoDB?
Når journalføring er aktivert i MongoDB, oppretter den en underkatalog til Journal, i katalogen til /data/db , som er banen definert av dbPath, som standard. Mens journalføring kjører, redigerer og lagrer MongoDB dataene i minnet og på disken, før dataendringene overføres til disken. Det er veldig nyttig i tilfelle det oppstår en feil på grunn av hvilke endringer i data som ikke er lagret, MongoDB kan hente endringene fra journalfilen og kan sikre holdbarheten til filene.

Ekspertnivå

Disse spørsmålene er relatert til de mer avanserte konseptene til MongoDB, det forventes at en ekspertisekandidat skal svare på disse spørsmålene.

Spørsmål 13: Hva er MongoDB-skjæringsprosessen?
I MongoDB er sharding prosessen med å distribuere dataene til en enorm database blant mange MongoDB-servere. Så det er enkelt å håndtere dataene og kan også svare på forespørslene med høy hastighet. MongoDB støtter horisontal skalering gjennom skjæring.

MongoDB-klyngen består av tre deler som er skår ; den er også kjent som replikaen og er tilgjengelig på hver server, mango ; de fungerer som tolken mellom serveren og shard, og konfigurasjonsservere ; de lagrer konfigurasjonsinnstillingene for klyngen og metadata.

Spørsmål 14: Hva er utskalering og hvordan oppstår det i MongoDB?
Når det er mye data på en enkelt node, nærmer de flere nodene den lastede noden for å fordele belastningen. Denne prosessen med å dele en belastning av en enkelt node til forskjellige noder kalles utskalering og er også kjent som horisontal skalering.

Spørsmål 15: Hvordan kan vi få informasjon om spørringsplanene ved å bruke MongoDB spørrespråk?
De forklare() kommandoen brukes og den støtter modusene som er 'allPlansExecution, executionStats og queryPlanner'. For eksempel:

db . restauranter . forklare ( 'executionStats' ) . finne (
{ 'mat' : 1 , 'bydel' : 'Brooklyn' }
) ;

I eksemplet ovenfor hentes dataene til restauranten fra kommandoen explain().

Spørsmål 16: Forklar MongoDB Aggregation Framework.
I MongoDB henter data fra forskjellige samlinger og returnerer etter beregning et kombinert resultat kjent som aggregasjonen. Den har tre trinn, først vil den ta inndata og filtrere dokumentene vi trenger fra dokumentene ved å bruke $match(), deretter gjør vi aggregeringsjobben på den filtrerte informasjonen ved å bruke $group(), og til slutt sorterer vi våre resultater ved å bruke $sort().

Spørsmål 17: Er det mulig å låse mer enn én database ved å bruke MongoDB-operasjon?
Ja, MongoDB kan låse mer enn én database, for å låse flere databaser umiddelbart, bruker vi MongoDB-operasjonen db.copyDatabase() , mens operasjonen, db.repairDatabase() bruke en global lås på redigering av databasen og også begrense andre operasjoner som skal implementeres til den blir fjernet.

Spørsmål 18: Hva er GridFS i MongoDB?
Store filer som overstiger 16 MB som bilder, videofiler og lydfiler administreres i MongoDB ved å bruke GridFS og lagres i deler og biter av filen i stedet for et enkelt dokument, som standard støtter MongoDB bare to formater som er fs. filer og fs.chunks for å lagre biter og metadata av filer.

Spørsmål 19: Hvordan kan du beskrive replikasjonsfenomener i MongoDB?
Replikering er prosessen med å synkronisere data mellom mange servere, mens MongoDB kopierer dataene og replikerer dem til forskjellige servere, så i tilfelle serverkrasj kan dataene hentes fra en hvilken som helst annen server som sikrer datasikkerheten.

Spørsmål 20: Hva er Mongo Shell?
Et mongo-skall er en JavaScript-plattform, der vi kan samhandle med MongoDB og også gjøre endringer i dataene ved hjelp av spørringene. Den brukes også til administrative formål som å vedlikeholde databaseforekomstene. Som standard er mongo shell inkludert i installasjonsfilen, men hvis den ikke er installert, kan du installere den fra MongoDB-serveren.

Konklusjon

MongoDB er en populær NoSQL-database, som brukes til å administrere data i form av dokumenter og den er veldig enkel å håndtere da den er skjemaløs. Den brukes av mange kjente selskaper som Twitter og Facebook. På grunn av dens popularitet, er det mange jobbmuligheter for utviklerne som jobber i MongoDB-grensesnittet. I denne artikkelen har de mest stilte MongoDB-intervjuspørsmålene blitt delt med passende svar.