Categories: Articles tech

MongoDB Client: Les outils GUI pour manipuler sa base de données ?

Ce n’est pas toujours évident de s’y retrouver dans les lignes de commandes Mongo. De nombreux outils Graphic User Interfaces (GUI) afin d’aider les utilisateurs à manipuler MongoDB. Découvre les clients GUI pour MongoDB

Parce qu’il n’est pas toujours évident de s’y retrouver dans les nombreuses lignes de commandes d’un terminal, de nombreux outils ont développé des clients ou des Graphic User Interfaces (GUI) afin d’aider les utilisateurs à manipuler un outil. MongoDB ne fait pas exception à la règle. En effet, il existe plusieurs MongoDB client disponible pour faciliter l’utilisation de cette technologie.

L’intérêt des MongoDB client pour un développeur

Après avoir installé MongoDB sur votre PC Windows, votre poste Linux ou sur votre mac, vous avez probablement testé le Mongo Shell. Ce terminal MongoDB vous permet de vous connecter et manipuler votre serveur de base de données et réaliser les opérations que vous souhaitez.

Voici à quoi ressemble le Mongo Shell. Il s’agit d’un terminal MongoDB demandant de l’expérience pour être utilisé correctement.

Seulement savoir manipuler toutes ces commandes demande de l’expérience, surtout pour des opérations critiques comme la modification ou suppression de documents, de collections ou de la base complète.

Modifier ou supprimer un document MongoDB

Le premier besoin lorsqu’on utilise de la donnée est de pouvoir la manipuler. Que ce soit en phase de développement, en pré-production et parfois en production (même si ça doit rester exceptionnel), un développeur a parfois besoin de venir modifier un objet. C’est là où un mongodb client va nous permettre de gagner du temps.

En effet, une opération critique comme la modification d’un objet va nécessiter au développeur de vérifier ce qu’il fait. S’il doit réaliser l’opération depuis son shell, il fera probablement une première requête pour récupérer le document:

db.collection.find({"name":"Rayed"})

Une fois qu’il est sûr d’avoir le bon document, il va pouvoir faire la requête de modification. Supposons qu’il doit modifier le prénom et enlever le champ « verified »

db.collection.updateOne({"name":"Rayed"}, {"name":"Fred", $unset: "verified"})

Pour une opération relativement simple, il a fallu prendre le temps de taper 2 requêtes. Imaginer qu’il faille accéder à une propriété imbriquée qui héberge un tableau de string et qu’il faille supprimer un élément du tableau ? La requête devient alors plus complexe. Il faudra probablement un peu de temps de recherche sur la documentation de Mongodb pour bien la rédiger.

Grâce à un mongodb client, vous pourrez accéder à votre document en un clic et modifier ce que vous souhaitez. Ce gain de temps va vous permettre de passer plus de temps à développer votre application plutôt qu’à manipuler vos données.

Gérer les index et leur bon fonctionnement

Les index sont critiques au bon fonctionnement d’une application qui vit. Lorsque vous développez votre application et que vous n’avez qu’une dizaine de documents dans votre collection, une opération recherche find ou findOne reste suffisamment rapide.

En revanche, lorsque votre application grandit et que vous avez maintenant plusieurs centaines ou milliers d’entrées, une recherche par « nom » va demander à MongoDB de parcourir l’ensemble des documents. On appelle ça un collectionScan.

Pour améliorer les performances de votre application, vous serez rapidement amenés à créer des index. Ces créations peuvent se faire dans votre code depuis votre application nodejs mongodb, depuis le mongo shell ou depuis votre mongodb client.

Visualisez les index de votre base de données directement depuis le Mongodb Client Compass

Dans votre mongodb gui vous verrez le nombre d’objets qui ont été indexés ainsi que la taille qu’ils représentent.

MongoDB client : les GUI pour gérer sa base de données

Pour vous aider dans la gestion de votre base de données, plusieurs clients Mongodb gui ont vu le jour:

MongoCompass (PC + Mac + Linux)

MongoCompass est le Mongodb client officiel proposé par la société MongoDB. C’est le mongodb client le plus travaillé graphiquement et agréable à manipuler. Son interface est intuitive, même pour les débutants. Elle permet de performer les opérations de modifications sur vos documents et de performer des queries mongo directement depuis l’outil.

modification de document avec mongodb client

RoboMongo 3T (PC + Mac + Linux)

RoboMongo propose deux solutions Mongodb gui. Robo3T est la solution « Community » open source et l’édition Studui 3T, plus complète, pour entreprises. Anciennement connue sous le nom de Robomongo, ce mongodb gui a gagné sa popularité du fait qu’il ait été le premier sur le marché à proposer une solution légère et gratuite.

Robo3T est un Mongodb Client compatible Windows, Mac et PC

Mongo Management Studio (PC + Mac + Linux)

Mongo Management Studio est un Mongodb client d’origine allemande, exploitant une fenêtre navigateur pour se connecter à votre base de données. Tout comme les deux autres mongodb client cités, MMS vous permet de manipuler vos données ou exécuter des queries ou des agrégations directement dans l’outil. Il est toutefois plus limité dans le sens où il ne prend pas en charge les versions de MongoDB supérieures à 3.4 là ou les deux autres prennent en charge les versions 4 et +.

Mongo Management Studio est un Mongodb client d’origine allemande, exploitant une fenêtre navigateur pour se connecter à votre base de données.

Aller plus loin

Découvrez nos autres articles pour apprendre à manipuler MongoDB et devenir un meilleur développeur:

Rayed Benbrahim

Recent Posts

Les pêches et les noix de coco : mieux comprendre la culture d’entreprise quand on change de poste

Changer d’entreprise, c’est excitant. Nouveau challenge, nouveaux collègues, nouveau café. Mais, bien souvent, on oublie…

6 jours ago

Le DevSecOps, une évolution nécessaire ?

Ça n’étonnera personne si nous affirmons que le monde du développement logiciel est en constante…

2 semaines ago

Travailler en tandem augmente la résilience des systèmes et le bien-être des collaborateurs !

En Allemagne, le travail en tandem à temps partiel, aussi appelé « jobsharing » est…

2 mois ago

Classement QCM saison automne : infos & règlement.

On se retrouve comme d'habitude pour le début du classement qcm saison automne ! Mais…

2 mois ago

Classement QCM saison Eté 2024 : Règlement, informations.

La saison printemps des tests techniques WeLoveDevs s'est terminée le 31 mai, et c'est Axel…

5 mois ago