AnnoncePrésentation de MongoDB 8.0, la plus rapide des MongoDB ! En savoir plus >
AnnonceVoyage AI rejoint MongoDB pour développer des applications d'IA plus précises et plus fiables sur Atlas. En savoir plus >
Blog home
arrow-left

Démystifier MongoDB : sécurité, évolutivité et performances

10 mars 2025

MongoDB a fait beaucoup de chemin depuis sa création en 2007. De nombreuses personnes ont découvert MongoDB au cours de ses premières années. Elles se sont forgé des opinions sur la base de données en se basant sur des impressions datant de 2012 à 2014. Toutefois, beaucoup de choses ont changé depuis.

Au cours des onze dernières années, MongoDB a réalisé des progrès considérables. Le plus important étant le lancement de MongoDB Atlas en 2016. L'accent a été mis sur l'amélioration des quatre domaines qui comptent le plus pour les entreprises comme pour les développeurs : la sécurité, la durabilité, la disponibilité et la performance.

  • Sécurité : Protection des données sensibles contre tout accès non autorisé et garantie de la conformité réglementaire.

  • Durabilité : garantir que les données restent intactes et fiables, même en cas de défaillance du système ou de perturbations inattendues.

  • Disponibilité : minimiser les interruptions de service et maintenir le fonctionnement du système, quoi qu'il arrive.

  • Performance : fournir des temps de réponse d'application rapides et cohérents et une mise à l'échelle efficace pour répondre à la demande croissante.

Ces avancées ont permis de gagner la confiance de certaines des plus grandes entreprises au monde, notamment Toyota, Cisco, Wells Fargo, Bosch et Verizon.

Pourtant, malgré ces progrès, des mythes dépassés sur MongoDB persistent, en particulier dans ces quatre domaines fondamentaux. Dans cet article, nous allons aborder ces idées reçues de front et rétablir la vérité sur la sécurité, la durabilité, la disponibilité et les performances de MongoDB. C'est parti !

Mythe 1 : « MongoDB n'est pas aussi sécurisé qu'une relational database »

L'un des mythes les plus persistants concernant MongoDB est qu'il n'est pas sécurisé, et certainement pas autant que les relational databases traditionnelles. Cette idée reçue découle probablement d'une série d'attaques par ransomware au milieu des années 2010. Des pirates ont exploité des bases de données non sécurisées, sans authentification appropriée et exposées sur les ports TCP par défaut. Bien que ces incidents aient mis en évidence de mauvaises pratiques de configuration, ils ont injustement jeté le discrédit sur les capacités de sécurité modernes de MongoDB.

MongoDB offre des fonctionnalités de sécurité robustes et intelligentes conçues pour protéger les données sensibles à chaque étape de leur cycle de vie. MongoDB chiffre les données à la fois en transit et au repos, comme d'autres grandes bases de données NoSQL et relational database. Cependant, ce qui caractérise MongoDB, c'est sa capacité à conserver les données chiffrées pendant leur utilisation. Avec Queryable Encryption, une solution innovante unique en son genre propre à MongoDB, les données sensibles peuvent rester chiffrées même lorsqu'elles sont interrogées. Cela élimine la nécessité de déchiffrer les données et réduit l'exposition aux menaces.

MongoDB prend également en charge une authentification et une autorisation flexibles qui s'intègrent parfaitement à de nombreux systèmes de gestion des identités. Grâce à des fonctionnalités telles que le contrôle d'accès basé sur les rôles et les autorisations granulaires, les utilisateurs n'ont accès qu'au contenu qu'ils ont la permission de consulter. Parallèlement, une configuration intuitive facilite la mise en œuvre de ces contrôles.

Au-delà du chiffrement et du contrôle d'accès, MongoDB inclut de puissants outils d'audit pour surveiller l'activité de la base de données et des fonctionnalités de sécurité réseau avancées, telles que la liste d'autorisation IP et le réseau privé. Ensemble, ces capacités offrent une protection complète contre les accès non autorisés et aident les organisations à répondre à des exigences de conformité strictes.

Mieux encore, ces fonctionnalités de sécurité avancées sont incluses par défaut dans MongoDB Atlas et MongoDB Enterprise Advanced sans coût supplémentaire. L’approche de MongoDB simplifie la gestion de la sécurité tout en minimisant les dépenses. Cela permet aux équipes de se concentrer sur la création d’applications avec l’assurance que leurs données sont protégées.

Mythe 2 : « Les capacités multicloud de MongoDB ne le distinguent pas des autres bases de données »

À première vue, l'affirmation selon laquelle MongoDB est multicloud peut sembler insignifiante. Après tout, de nombreuses bases de données sont disponibles sur plusieurs fournisseurs de cloud. Toutefois, cela ne garantit pas qu'elles sont toutes multicloud. Le véritable multicloud prend en charge les déploiements « inter-cloud », c'est-à-dire la capacité de déployer des nœuds individuels d'un seul cluster sur plusieurs fournisseurs de cloud. Cette distinction est souvent occultée par les fournisseurs incapables d'exécuter leurs clusters dans une telle configuration. La prise en charge des clusters multicloud dans Atlas est disponible partout depuis octobre 2020.

MongoDB Atlas permet un déploiement non seulement sur Amazon Web Services (AWS), Microsoft Azure ou Google Cloud, mais aussi sur les trois clouds simultanément avec un seul cluster. Il est possible de configurer et de paramétrer des déploiements inter-cloud uniquement depuis la console de gestion Atlas. Aucune configuration supplémentaire n'est requise auprès des fournisseurs de cloud individuels. Il ne s'agit pas seulement d'une simple fonctionnalité. C'est une capacité transformatrice qui élimine les frontières entre les fournisseurs de cloud. Avec MongoDB Atlas, c'est comme si AWS, Azure et Google Cloud fonctionnaient comme un environnement cloud unifié.

Pourquoi est-ce important ?

Pour commencer, le déploiement d'un cluster de base de données unique sur plusieurs clouds supprime la complexité opérationnelle liée à la gestion de la réplication et de la migration des données entre les fournisseurs. Une mobilité fluide des données peut être obtenue. La partie la plus difficile à déplacer de toute application, à savoir les données, devient désormais un jeu d'enfant.

Le multicloud permet également de créer des architectures d'applications qui exploitent simultanément les meilleurs services de plusieurs fournisseurs de cloud. De plus, les déploiements inter-cloud offrent une résilience inégalée. Grâce au basculement inter-cloud, en cas de panne, les données peuvent être automatiquement basculées vers un autre fournisseur de cloud dans la même région géographique, assurant ainsi un service ininterrompu.

Enfin, MongoDB Atlas offre la flexibilité nécessaire pour répondre facilement aux préférences régionales et aux choix des fournisseurs cloud. Atlas couvre plus de 115 régions prises en charge par les trois principaux fournisseurs cloud. Cela permet de répondre facilement aux exigences des clients ou de se conformer aux réglementations locales en utilisant une base de données unique.

MongoDB Atlas nous offre la possibilité d'exécuter notre base de données sur plusieurs clouds par le biais du même service. Avec Atlas, nous disposons d'une indépendance totale : chaque client est libre de choisir ce qui lui convient le mieux pour héberger ses données.

Gary Hoberman, CEO et Fondateur, Unquork

Mythe 3 : « Je comprends que MongoDB est conçu pour une mise à l'échelle horizontale, mais la mise à l'échelle est difficile »

La mise à l'échelle horizontale, également appelée scale-out, est l'un des points forts de MongoDB. Elle permet de répartir les charges de travail en ajoutant davantage de nœuds à mesure que les données et les applications se développent. Cependant, certaines croyances persistent selon lesquelles la mise à l'échelle de MongoDB est complexe. La réalité ? MongoDB rend la mise à l'échelle non seulement possible, mais simple, qu'elle soit horizontale ou verticale.

Avec MongoDB Atlas, la mise à l'échelle verticale, aussi appelée scale-up, est simple. En activant la mise à l'échelle automatique, MongoDB Atlas ajuste dynamiquement les ressources du cluster pour répondre aux exigences de la charge de travail. L'ajout de RAM, de CPU ou de capacité de stockage supplémentaire peut être effectué automatiquement et à la demande. Cela garantit des performances optimales sans intervention ou supervision manuelle continue.

Si vous devez aller au-delà de la mise à l'échelle verticale, MongoDB propose trois méthodes flexibles pour effectuer une mise à l'échelle horizontale :

  • Hashed sharding : les données sont réparties de manière aléatoire entre les nœuds à l'aide d'une clé de sharding hachée. Cela garantit une répartition uniforme des données et des charges de travail afin d'éviter les goulots d'étranglement.

  • Ranged sharding : les données sont réparties en fonction de plages d'un champ spécifique. Cela permet un contrôle précis sur la manière dont les données sont divisées. Cette approche est particulièrement utile pour éviter les points chauds dans les charges de travail.

  • Sharding par zones : les données sont réparties géographiquement. Cela permet de respecter les exigences en matière de résidence des données et de réduire la latence en conservant les données au plus près des utilisateurs.

Que se passe-t-il si la stratégie de sharding initiale ne se déroule pas comme prévu ? MongoDB relève ce défi avec la possibilité d’affiner les clés de sharding et de sharder à nouveau une collection sans interruption de service. Cela garantit que les stratégies de répartition des données s'adaptent à mesure que les besoins évoluent, le tout sans perturber les applications ou les utilisateurs.

Mythe 4 : « Puisque MongoDB est conçu pour la flexibilité, il ne doit pas être très performant »

Une idée reçue courante concernant MongoDB est que sa flexibilité et sa polyvalence se font au détriment des performances. Après tout, une base de données aussi agile, conçue pour permettre aux développeurs de modéliser les données comme ils le souhaitent, peut-elle réellement offrir la vitesse et l'efficacité d'une solution axée sur les performances ? MongoDB est conçu pour offrir les deux : une flexibilité inégalée et des performances exceptionnelles, tout en maintenant des coûts réduits.

Les performances de MongoDB découlent de son architecture intelligente et de ses fonctionnalités puissantes. Les requêtes ad hoc, l'indexation et les agrégations en temps réel facilitent l'accès aux données et leur analyse rapide. Quelle est la rapidité des requêtes ? Les requêtes sur clé principale ou indexées s'exécutent généralement en quelques millisecondes. Même les requêtes complexes qui ne sont pas indexées restent efficaces. Les performances dépendent généralement de facteurs tels que la taille de la collection et les spécifications de la machine.

Qu'en est-il des charges de travail telles que la recherche et l'analyse ? Certains développeurs pourraient supposer qu’elles entrent en concurrence pour les ressources et dégradent les performances des tâches opérationnelles. Cependant, MongoDB résout ce problème grâce à l'isolation des charges de travail. Cette fonctionnalité garantit que les charges de travail opérationnelles et non opérationnelles sont séparées. Cela permet à chacune de fonctionner à des performances optimales sans nécessiter de processus ETL (extraction, transformation, chargement) coûteux et chronophages.

Latence du réseau ? Pour les applications distribuées à l'échelle mondiale, les lectures couvertes (hedged reads) de MongoDB permettent d'effectuer des lectures à partir des nœuds de réplique les plus proches plutôt que d'attendre une réponse de nœuds distants. Cela réduit la latence et garantit que les applications restent hautement réactives.

Des cas d'utilisation incroyables témoignent des performances concrètes de MongoDB :

  • Amadeus traite 630 millions de réservations par an.

  • Idealo prend en charge 200 000 requêtes et 60 000 mises à jour par seconde.

  • Temenos atteint 150 080 transactions par seconde.

C'était avant la sortie de MongoDB 8.0, la version la plus performante de la base de données à ce jour. Avantages de MongoDB 8.0 :

  • Lectures 36 % plus rapides

  • Lectures et mises à jour 32 % plus rapides

  • Insertions groupées 56 % plus rapides

  • Amélioration impressionnante de 200 % pour les requêtes Time Series

MongoDB Atlas ne résout pas seulement nos problèmes de performances. Il facilite la vie des développeurs Web qui peuvent créer et gérer un code plus simple et plus direct.

Moutia Khatiri, CTO - Tech Accelerator, L’Oréal

MongoDB aujourd'hui

MongoDB a évolué bien au-delà des mythes perpétués durant ses premières années. MongoDB 8.0 offre des capacités robustes en matière de sécurité, de durabilité, de disponibilité et de performance. La solution chiffre les données sensibles tout au long de leur cycle de vie et permet des déploiements inter-cloud fluides. Elle simplifie la mise à l'échelle horizontale et verticale et alimente certaines des applications les plus exigeantes au monde. Ces capacités consolident la position de MongoDB en tant que base de données de choix pour les applications modernes.

megaphone

Découvrez d'autres mythes et idées reçues sur MongoDB dans les deux articles précédents de cette série :

  • Démystifier MongoDB : cas d'utilisation en entreprise
  • Briser les principaux mythes sur MongoDB et les relational databases

Ne vous laissez pas freiner par des idées reçues obsolètes. Découvrez l’innovation et les performances de MongoDB. Commencez à utiliser MongoDB Atlas gratuitement dès aujourd’hui. Ou, pour en savoir plus sur MongoDB, rendez-vous sur MongoDB University et suivez notre cours d’introduction à MongoDB gratuit.

Ressources MongoDB
Centre d’apprentissage Atlas|Cas clients|Centre d’apprentissage de l’IA|Documentation|MongoDB University