Retour du MongoDB Live

Nicolas Frizzarin
CodeShake
Published in
4 min readJun 15, 2020

--

Introduction

Il y a quelque jours s’est déroulé le MongoDB Live. Il s’agit en réalité de l’évènement MongoDB World qui malheureusement, au vu des récents évènements (Covid-19 oblige), s’est vu devenir virtuel et s’est transformé en MongoDB Live.
Néanmoins sa programmation n’a pas changé et des fabuleuses nouveautés sont à venir :)

MongoDB Query Language et Driver

MongoDB possède un language de requête riche, expressif et moderne qui permet de créer toutes sortes d’applications analytiques ou transactionnelles.
Ce qui rend ce language si riche est principalement dû au framework d’agrégation. Avec une douzaine de ‘stages’ et environ 150 opérateurs et expressions nous pouvons écrire des requêtes plus ou moins complexes.
C’est dans ce sens que MongoDB rajoute :

  • le stage: $unionWith qui permet de combiner deux résultats de pipeline effectué sur deux collections différentes.
    Si l’on souhaite faire une comparaison avec le monde SQL il s’agit de l’opérateur UNION ALL.
  • Des opérateurs comme $first permettant de récupérer le premier élément d’un tableau ou $isNumber permettant de savoir si une valeur est un nombre ou non.
  • La possibilité de réaliser ses propres expressions à l’aide de fonctions javascript au sein même du framework d’agrégation. Pour rappel ceci était possible uniquement au sein d’un MapReduce.

Fort de ses 11 drivers assurant une connectivité simple avec les différentes plateformes MongoDB a également officialisé l’apparition de deux nouveaux drivers: swift — rust qui sont déjà disponibles :)

MongoDB Developer Tools

Cette année, les développeurs n’ont pas été oubliés car MongoDB apporte un lot de nouveautés non négligeable côté tools.

Tout d’abord, la possibilité d’avoir un MongoDB shell avec une coloration syntaxique. Actuellement encore en beta, ce shell n’est pas encore par défaut dans la version “Community Edition”, il vous faudra donc la télécharger indépendamment. A l’avenir ce shell deviendra par défaut.

On note également l’apparition d’un CLI complet destiné au cloud. Ce CLI permettra de créer, à l’aide de lignes de commandes, des clusters dans Atlas. Il sera donc beaucoup plus facile de réaliser des scripts d’automatisation à l’avenir.
Attention ce CLI est encore en version alpha. Je déconseille donc vivement son utilisation en production ;).

C’est ensuite l’intégration complète d’un environnement MongoDB au sein des principaux IDE’s du moment à savoir: Visual Studio Code et toute la suite JetBrains. Cet environnement vous proposera de vous connecter directement à votre serveur MongoDB (cloud ou local) facilitant ainsi la réalisation de vos queries au sein de votre plateforme de développement, ou encore le lancement d’un mMongoDB shell (si un shell MongoDB est installé en local).

Enfin une nouvelle version du GUI (MongoDB Compass) fera son entrée. Cette nouvelle version embarquera le nouveau MongoDB Shell et supportera toutes les nouveautés qu’apporte la version 4.4 de MongoDB.
Pour rappel, il y a quelques mois MongoDB a rendu ce GUI open source et complet pour tous les utilisateurs.

MongoDB Cloud Plateform

Dans ce domaine, MongoDB nous fait de belles surprises avec l’émergence :

  • Atlas Auto-Scale GA qui va gérer de manière automatique la capacité de votre base de données MongoDB Atlas. Atlas surveille les mesures clés en temps réel et ajuste votre cluster en se basant sur la modélisation prédictive et pratique, éprouvée par la gestion de dizaines de milliers de déploiements. Vous l’avez sans doute compris, derrière cette fonctionnalité se cache de la BI :)
  • Atlas Index and Schema Recommendations optimise de manière proactive vos requêtes en les analysant et vous proposant de nouveaux index ainsi que des schémas pattern. Il devient alors très simple d’améliorer les performances de ses requêtes mais aussi d’élaborer un schéma pattern robuste et fiable.
  • Atlas Search GA autorise la réalisation d’un free search sur tous les champs dont votre document est composé. Vos sites pourront, à l’aide d’une unique requête, réaliser une recherche sur l’ensemble des champs composant vos documents.
  • MongoDB Charts annonce d’être très prometteur. Actuellement payant sur Atlas, cette solution vous propose d’insérer simplement au sein de vos applications des charts. Néanmoins, attention aux performances de votre app. Chaque chart est contenu dans une iframe pour le moment.
  • MongoDB Realm permet aux développeurs de créer des fonctionnalités clés. Ce nouveau produit composé de Realm Sync for mobile et de Realm GraphQl service conclura à développer des applications réactives et fiables fonctionnant hors ligne rapidement.
  • OPS Manager la meilleure façon d’utiliser MongoDB on-premises et dans son propre cloud privé.

Pour résumer

MongoDB apporte un lot de nouveautés non négligeable déjà disponibles tant dans le cloud, que dans l’intégration des outils pour le développeur.

On peut donc assurément dire que la version 4.4 s’annonce prometteuse d’autant plus que cette version est bien plus performante que la précédente.

L’écosystème Mongo s’étend, promettant de créer des applications plus rapidement et permettant ainsi de garder son focus sur les fonctionnalités à développer.

Il ne me reste plus qu’une chose à ajouter : Installez MongoDB et laissez libre cours à votre imagination pour créer les applications de demain.

--

--