Top Mongodb Interview Questions

Top Mongodb Interview Questions
MongoDB est un système de gestion de la base de données NOSQL open source; Il offre non seulement une facilité de stockage de données non structurées, mais la gère également. Chaque fois que la question se pose de la façon de gérer des millions de lignes de données non structurées, MongoDB est recommandé.

La première version de Mongodb est publiée en février 2007 par 10 génies La société de logiciels, plus tard en 2013, 10Gen a changé le nom de l'entreprise en MongoDB Inc.

MongoDB est une base de données NoSQL qui est utilisée pour stocker des données sous le formulaire de documents JSON en raison de cette fonctionnalité, une quantité massive de données non structurées peut facilement être stockée et gérée dans MongoDB. L'ensemble de ces documents ayant les données est appelé collection. Et ces collections sont similaires aux tableaux utilisés dans les bases de données relationnelles pour stocker des données.

Il existe de nombreuses raisons pour lesquelles MongoDB est si populaire par rapport aux autres bases de données relationnelles et nosql, certaines d'entre elles sont:

  • Les développeurs peuvent définir la structure en fonction des paires de valeurs clés
  • Comme les bases de données relationnelles, les lignes et les colonnes ne sont pas nécessaires pour les données
  • La hiérarchique de la structure MongoDB permet de stocker des données sous forme de tableaux et peut également stocker des données complexes
  • Il fait que ses développeurs gèrent facilement les bases de données car il prend en charge plusieurs langages de programmation
  • Il prend également en charge les fonctionnalités de GRIDFS et de la réplication

En raison de sa popularité, il existe de nombreuses opportunités d'emploi pour les développeurs qui travaillent avec MongoDB. Cet article est lié aux questions les plus importantes et couramment posées par de nombreuses organisations les mieux notées.

Questions d'entrevue MongoDB

Les questions les plus fréquemment posées sont divisées en trois niveaux: niveau de base, niveau intermédiaire et niveau d'expert.

Niveau de base

Ces questions sont liées aux concepts de base et aux terminologies de MongoDB, et dans une interview, il est prévu que chaque candidat réponde à ces questions.

Question 1: Que savez-vous des bases de données NoSQL et de leurs types?
Les bases de données NoSQL sont les bases de données qui ne stockent pas de données dans les tableaux comme le font les bases de données SQL à la place qu'ils stockent des données sous d'autres formes comme des documents et des formulaires de valeur clé.

Il existe quatre types importants de bases de données NOSQL:

  • Bases de données de documents: Ces bases de données stockent les données sous forme de documents JSON, ces documents se combinent pour former des collections, et ces collections se combinent pour former une base de données.
  • Bases de données de valeur clé: Ces bases de données stockent les données sous forme de valeurs clés, par exemple, «name = John», dans cet exemple «Nom» est la clé, et «John» est la valeur.
  • Magasin de colonnes larges: Ces bases de données stockent les données sous forme de tables dynamiques, contrairement aux bases de données relationnelles, ces tables ne sont pas structurées.
  • Bases de données graphiques: Ces bases de données contiennent des bords et des nœuds; Les nœuds sont utilisés pour stocker des informations tandis que les bords sont utilisés pour montrer les relations entre les nœuds.

Question 2: Quel type de base de données NoSQL MongoDB est?
La base de données MongoDB appartient aux bases de données de documents, ce qui signifie qu'il stocke les données selon les documents JSON. Il ne suit aucun schéma et permet l'insertion de tout type de données.

Question 3: Laquelle est la meilleure parmi les bases de données MongoDB et SQL?
MongoDB est meilleur que les bases de données SQL de telle manière qu'il peut gérer les données non structurées tandis que les bases de données SQL ne gèrent que les données structurées et les stocker sans aucune restriction contrairement aux bases de données relationnelles. En raison de sa caractéristique de schémas, les requêtes sont traitées rapidement dans MongoDB par rapport aux bases de données SQL car les données ne sont pas placées sous la forme de tables et dans un certain nombre de tables au lieu de cela, les données sont placées au même endroit, donc elle est Facile pour la requête pour accéder aux données, et MongoDB permet de mapper ses données dans d'autres langages de programmation, ce qui permet à ses utilisateurs de travailler dessus.

Question 4: Qu'est-ce qu'un document et une collection à MongoDB?
Les données sont stockées dans MongoDB sous forme de documents, puis ces documents se combinent pour former une collection, et un certain nombre de collections se combinent pour former une base de données. Pour comprendre cela, considérons un exemple d'une base de données de School_data, une base de données de l'école_data contient des collections qui contiennent des classes_data, et en outre, ces documents (classes_data) contiennent les données des étudiants (Student_data) sous la forme de documents.

Question 5: Que sont les types de données MongoDB?
Il existe de nombreux types de données que MongoDB supporte:

Chaîne Les types de données de chaîne stocke les données sous forme d'alphabets / caractères et il doit être de 8 octets et appartenir à UTF-8, par exemple, Jone.
Entier Il stocke les nombres jusqu'à 64 bits, mais la taille peut varier en fonction du serveur, par exemple, 1,54.
Booléen Ceci est utilisé pour stocker des valeurs booléennes qui peuvent être 0 ou 1, par exemple, John est en classe? Sa réponse soit oui ou non.
Double Cela stocke des numéros flottants comme 22.8.
Touches min / max Il est utilisé pour comparer les valeurs Min et Max.
Tableaux Ceci est utilisé pour stocker des tableaux ou plusieurs valeurs dans une clé.
Horodatage Lorsqu'un document est modifié, il peut conserver les enregistrements des modifications.
Objet Ce magasin les documents intégrés
Nul Il stocke les valeurs nulles.
Symbole C'est le type de chaîne et peut stocker les langues liées aux symboles
Date L'heure et la date actuelles peuvent être stockées dans ces types de données
ID d'objet Les documents ont des identifiants uniques, ces ID peuvent être stockés dans ce type de données
Données binaires Les données binaires qui sont également connues sous le nom de langage de la machine y sont stockées.
Code Les codes JavaScript sont stockés dans des documents à l'aide de ce type de données
Expression régulière Toute expression peut être stockée dans ce type de données

Question 6: Quelles sont les alternatives à MongoDB?
MongoDB est un type de base de données NoSQL, avec l'aide de laquelle de grandes données distribuées sont stockées dans les documents BSON. Les alternatives de MongoDB peuvent être Amazon DynamoDB, Microsoft Azure Cosmos DB, Couchbase, PostgreSQL, Redis et Cassandra.

Niveau intermédiaire

Ces questions sont plus liées aux concepts avancés qu'aux bases et dans une interview, il est prévu qu'un candidat moyen réponde à ces questions.

Question 7: Comment comparer MongoDB et SQL à un niveau élevé?
Les bases de données SQL sont des bases de données relationnelles qui ont stocké les données d'une manière bien structurée et organisée sous forme de lignes et de colonnes qui font des tables, en revanche, les bases de données MongoDB sont les bases de données NOSQL, qui stockent les données dans les documents, ces documents sont collectivement Connu sous le nom de collections, et ces collections se combinent pour former une base de données.

Question 8: Y a-t-il des fonctionnalités comme la gestion des transactions acides et le verrouillage à MongoDB?
Non, par défaut, MongoDB ne fournit aucune transaction acide sur plusieurs documents, cependant, il peut fournir le support des transactions acides sur un seul document.

Question 9: Qu'est-ce que l'indexation dans MongoDB?
Dans MongoDB, l'index est une structure de données spéciale qui occupe certains champs de la base de données et contient des données pour créer un index. L'index améliore la capacité de recherche de la base de données, au lieu de rechercher une chose particulière à partir de nombreux documents, un utilisateur peut dire directement au document spécifié à l'aide d'indexation.


Student_id = 1
Student_name = 'Paul'
Pays = «USA»

Dans l'exemple ci-dessus, le «Student_id = 1» est un index, donc si quelqu'un recherche soit par Student_id ou 1, le document suivant sera ouvert.

Question 10: Dans MongoDB, un index peut-il être créé sur un champ de tableau?

Oui, nous pouvons créer un index sur un champ de tableau dans MongoDB, et il index chaque valeur du tableau. En fait, MongoDB crée en soi l'index multi-likey et vous n'avez pas besoin de le spécifier si un champ d'index est un tableau.

Question 11: Est-il possible d'exécuter plusieurs opérations JavaScript dans une seule instance MongoDB?
Il est possible d'exécuter plusieurs opérations JavaScript dans une seule instance mongod car dans le 2.4 version du moteur JavaScript MongoDB V8 est ajoutée.

Question 12: Qu'est-ce que la journalisation à MongoDB?
Lorsque la journalisation est activée dans MongoDB, elle crée un sous-répertoire de journal, dans le répertoire de / Données / DB, qui est le chemin défini par DBPath, par défaut. Pendant que la journalisation est en cours d'exécution, le MongoDB modifie et stocke les données en mémoire et sur le disque, avant que les modifications de données ne soient transférées sur le disque. Il est très utile dans le cas où une erreur se produirait en raison de laquelle les modifications des données n'ont pas été enregistrées, le MongoDB peut récupérer les modifications du fichier de journal et peut assurer la durabilité des fichiers.

Niveau d'expert

Ces questions sont liées aux concepts les plus avancés de MongoDB, il est prévu qu'un candidat d'expertise soit répondu à ces questions.

Question 13: Quel est le processus de rupture de MongoDB?
Dans MongoDB, Sharding est le processus de distribution des données d'une énorme base de données parmi de nombreux serveurs MongoDB. Il est donc facile de gérer les données et peut également répondre aux requêtes à grande vitesse. MongoDB prend en charge la mise à l'échelle horizontale à travers le fragment.

Le cluster MongoDB se compose de trois parties qui sont fragments; Il est également connu sous le nom de réplique et est disponible sur chaque serveur, mangos; Ils agissent comme l'interprète entre le serveur et l'éclat, et serveurs de configuration; Ils stockent les paramètres de configuration du cluster et des métadonnées.

Question 14: Qu'est-ce que l'échelle et comment cela se passe-t-il dans MongoDB?
Lorsqu'il y a beaucoup de données sur un seul nœud, les nœuds multiples rapprochent du nœud chargé, pour distribuer sa charge. Ce processus de partage d'une charge d'un seul nœud à différents nœuds est appelé échelle et est également connu sous le nom de mise à l'échelle horizontale.

Question 15: Comment pouvons-nous obtenir des informations sur les plans de requête en utilisant le langage de requête MongoDB?
Le expliquer() La commande est utilisée et elle prend en charge les modes «AllPlanSexution, Executionstats et QueryPlanner». Par exemple:

db.Restaurants.Expliquez ("Executionstats").trouver(
"Cuisine": 1, "Borough": "Brooklyn"
));

Dans l'exemple ci-dessus, les données du restaurant sont extraites de la commande Explication ().

Question 16: Expliquez le cadre d'agrégation MongoDB.
Dans MongoDB, récupérer les données de différentes collections et après le calcul renvoyant un résultat combiné connu sous le nom d'agrégation. Il a trois étapes, d'abord, il prendra les entrées et filtrera les documents dont nous avons besoin à partir des documents en utilisant le $ correspond (), puis nous faisons le travail d'agrégation sur les informations filtrées en utilisant $ groupe (), et enfin, nous trions Nos résultats en utilisant les $ Sort ().

Question 17: Est-il possible de verrouiller plus d'une base de données à l'aide de l'opération MongoDB?
Oui, MongoDB peut verrouiller plus d'une base de données, pour verrouiller plusieurs bases de données instantanément, nous utilisons l'opération MongoDB db.copyDatabase (), Alors que l'opération, db.réparationDatabase () Appliquer un verrouillage mondial sur l'édition de la base de données et restreindre également d'autres opérations à implémenter jusqu'à ce qu'elle soit supprimée.

Question 18: Qu'est-ce que Gridfs à MongoDB?
Les fichiers volumineux qui dépassent les 16 MB comme des images, des fichiers vidéo et des fichiers audio sont gérés dans MongoDB en utilisant le GRIDFS et stockés en parties et morceaux du fichier au lieu d'un seul document, par défaut MongoDB ne prend en charge que deux formats qui sont FS.Fichiers et FS.morceaux pour stocker des morceaux et des métadonnées de fichiers.

Question 19: Comment pouvez-vous décrire les phénomènes de réplication à MongoDB?
La réplication est le processus de synchronisation des données entre de nombreux serveurs, tandis que MongoDB copie les données et les reproduisent à différents serveurs, donc en cas de crash de serveur, les données peuvent être récupérées à partir de tout autre serveur qui garantit la sécurité des données.

Question 20: Qu'est-ce que Mongo Shell?
Un shell Mongo est une plate-forme JavaScript, à travers laquelle nous pouvons interagir avec MongoDB et peut également apporter des modifications dans les données à l'aide des requêtes. Il est également utilisé à des fins administratives telles que le maintien des instances de base de données. Par défaut, Mongo Shell est inclus dans le fichier d'installation mais s'il n'est pas installé, vous pouvez l'installer à partir du serveur MongoDB.

Conclusion

MongoDB est une base de données NOSQL populaire, qui est utilisée pour gérer les données sous forme de documents et il est très facile à gérer car il est schémas. Il est utilisé par de nombreuses sociétés bien connues comme Twitter et Facebook. En raison de sa popularité, il existe de nombreuses opportunités d'emploi pour les développeurs qui travaillent dans l'interface MongoDB. Dans cet article, les questions d'entrevue les plus fréquemment posées à MongoDB ont été partagées avec leurs réponses appropriées.