IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

MongoDB attribue ses bons résultats trimestriels en partie à des victoires compétitives contre PostgreSQL
Le système le plus populaire parmi les développeurs professionnels selon un sondage

Le , par Stéphane le calme

41PARTAGES

17  0 
Le fournisseur de bases de données NoSQL MongoDB affirme qu'il réalise des gains significatifs par rapport à son rival relationnel open source PostgreSQL, une affirmation qui semble aller à l'encontre des recherches récentes.

Lors de l'annonce des résultats du deuxième trimestre de l'entreprise, qui ont dépassé les attentes avec un chiffre d'affaires de 478,1 millions de dollars, le PDG Dev Ittycheria a déclaré que les succès récents étaient en partie dus à des victoires concurrentielles contre PostgreSQL, le système qui est devenu la base de données la plus populaire parmi les développeurs professionnels l'année dernière, selon une enquête de Stack Overflow.

MongoDB a subi des pertes opérationnelles de 71,4 millions de dollars au cours du deuxième trimestre de son année fiscale 2025, qui s'est achevé le 31 juillet, soit beaucoup plus que les 49 millions de dollars enregistrés au cours du même trimestre de l'année dernière. Pourtant, Ittycheria n'a pas voulu laisser cela gâcher l'ambiance optimiste qui a suivi les résultats, qui ont vu la valeur de l'entreprise grimper de 14 %.


Le cas de Fanatics Betting & Gaming

Un exemple concret de cette victoire est le projet de Fanatics Betting & Gaming, une division de la société Fanatics, qui vaut environ 30 milliards de dollars. Initialement, l’équipe avait lancé une plateforme sur PostgreSQL mais a rencontré des défis en termes de scalabilité et de complexité. Après avoir migré vers MongoDB Atlas, ils ont intégré Atlas Search pour offrir une meilleure expérience utilisateur

« Au départ, l'équipe a lancé une plateforme sur PostgreSQL, mais elle s'est heurtée à des problèmes d'évolutivité, de flexibilité et de complexité excessive », a déclaré le PDG lors d'une conférence téléphonique avec des investisseurs. « Après avoir migré vers MongoDB Atlas, l'équipe a également intégré Atlas Search afin d'offrir aux utilisateurs une meilleure expérience pour trouver toutes les options de paris disponibles. Fanatics prévoit de continuer à développer MongoDB Atlas pour s'assurer qu'ils peuvent fonctionner à l'échelle alors qu'ils se préparent pour le début de la saison de la NFL. »

Le contexte de la décision de Fanatics Betting & Gaming reste obscur. Il se peut qu'ils n'aient pas choisi la bonne base de données la première fois.

Quoi qu'il en soit, Ittycheria a affirmé que cette décision s'inscrivait dans le cadre d'une tendance constante à opposer MongoDB à PostgreSQL. Il a souligné que PostgreSQL existait depuis 40 ans, comme si c'était une mauvaise chose.

« Cette technologie existe depuis longtemps », a-t-il déclaré. « Elle bénéficie vraiment de l'influence d'Oracle, de SQL Server et de MySQL, ce qui lui permet de consolider le marché relationnel. MongoDB possède un schéma très souple qui permet de stocker des documents dans un format de type JSON, ce qui est avantageux pour les structures d'application qui évoluent au fil du temps. C'est un avantage pour les structures d'application qui évoluent au fil du temps ».

« Nous pouvons évoluer horizontalement », ajoute-t-il, « ce qui facilite la distribution des données sur plusieurs serveurs ou serveurs virtuels pour les applications qui requièrent des quantités massives de données. Là encore, nous pouvons gérer les performances des grands ensembles de données mieux que PostgreSQL. Le sharding intégré permet une distribution automatique des données ».

Il a également affirmé que MongoDB était meilleur pour la productivité des développeurs, car le format de type JSON et le schéma flexible permettent d'accélérer les cycles de développement, ce qui aide les clients qui utilisent le développement agile.


Critique et analyse

Malgré les revendications de MongoDB, il est important de noter que chaque technologie a ses propres forces et faiblesses.

Ittycheria s'est demandé si les utilisateurs qui migrent des anciennes bases de données relationnelles vers PostgreSQL « veulent simplement rester sur le relationnel parce que c'est ce qu'ils connaissent ».

Avec leur inévitable intérêt direct, de tels commentaires laissent beaucoup de choses à décortiquer. PostgreSQL a dépassé MongoDB dans le classement des DB-Engines quelque temps en 2017 et l'écart n'a cessé de se creuser depuis. Dans la dernière enquête de Stack Overflow, PostgreSQL a gagné du terrain et est désormais utilisé par 52 % des développeurs.

Si certaines applications peuvent être mieux prises en charge par une base de données documentaire spécialisée, PostgreSQL peut prendre en charge les documents JSON, et ce depuis des années.

Il est également important de rappeler que PostgreSQL n'est pas seulement PostgreSQL. Les trois grands fournisseurs de cloud supportent tous les services frontaux de PostgreSQL, tandis que CockroachDB et YugaByteDB fournissent tous deux des services frontaux presque compatibles avec PostgreSQL, avec l'avantage supplémentaire qu'ils supportent les back ends distribués pour les applications globales à grande échelle.

De plus, certains témoignages parlent d'entités qui ont fait le chemin inverse.

Nous avons par exemple Stuart Spence qui a raconté son parcours avec MongoDB. Il explique qu’il a commencé à utiliser MongoDB en 2017, séduit par sa simplicité, sa flexibilité et sa performance. Il décrit les différents projets sur lesquels il a utilisé MongoDB, en soulignant les avantages qu’il en a tirés, comme la facilité de développement, la scalabilité et la richesse des fonctionnalités.

Cependant, il révèle aussi les inconvénients et les limites de MongoDB, qu’il a découverts au fil du temps. Il cite notamment les problèmes de fiabilité, de sécurité, de consistance et de complexité des requêtes. Il explique que ces problèmes l’ont amené à remettre en question son choix de base de données, et à envisager une alternative plus adaptée à ses besoins.

Infisical a aussi raconté son aventure.

Il s'agit d'une plateforme en pleine croissance, traite désormais plus de 50 millions de secrets par jour. Ces secrets sont des configurations d’applications et des données sensibles envoyées aux équipes, aux pipelines CI/CD et aux serveurs/applications qui en ont besoin. Face à cette croissance, Infisical a dû mettre à jour sa pile technologique. Récemment, Infisical a effectué une migration complète de sa base de données de MongoDB à PostgreSQL. Ce processus complexe a nécessité une réflexion approfondie, l’adoption de nouvelles technologies, la création de nouveaux schémas de base de données, la réécriture de requêtes et la migration de millions (voire de milliards) d’enregistrements vers PostgreSQL.

Début avec MongoDB

Lorsque nous avons initialement construit Infisical, nous avons choisi MongoDB + Mongoose ORM, car cette combinaison présentait le moins de surcharge et nous permettait de livrer rapidement des fonctionnalités de qualité. À l’époque, nous étions davantage concentrés sur Infisical Cloud, notre offre SaaS gérée. Nous n’avions pas anticipé autant d’utilisateurs auto-hébergés du produit, et il n’avait donc pas été conçu dans cette optique.

Limitations de MongoDB

Bien que MongoDB ait bien servi Infisical au début, il a montré ses limites lorsque notre produit a évolué au-delà du service géré. De plus en plus d’organisations, notamment celles opérant à l’intersection de la conformité et de la sécurité, ont préféré l’auto-hébergement d’Infisical plutôt que d’utiliser Infisical Cloud. D’autres avaient des exigences sur site à respecter. La demande croissante pour l’auto-hébergement nous a amenés à quitter MongoDB au profit de PostgreSQL.

Problèmes avec MongoDB

Voici quelques-uns des problèmes que nous avons rencontrés avec MongoDB :
  • Transactions difficiles à configurer : la mise en place de transactions avec MongoDB n’était pas triviale, car elle nécessitait l’exécution de MongoDB en mode cluster avec diverses configurations. Cela rendait difficile la réalisation d’un simple POC d’Infisical, car cela exigeait une configuration de production de MongoDB ;
  • Manque de support pour les transactions : MongoDB ne prenait pas en charge les transactions de manière native, ce qui posait des problèmes pour les opérations critiques ;
  • Structure de base de données sans schéma : bien que la flexibilité de MongoDB soit un avantage, elle a également entraîné des problèmes de conception de schéma. La conception sans schéma a rendu difficile la gestion des versions et la maintenance.
Conclusion

MongoDB s’est imposé comme un acteur incontournable dans le domaine des bases de données NoSQL, grâce à sa flexibilité, sa scalabilité et sa capacité à répondre aux besoins des applications modernes. Cependant, son succès ne signifie pas la fin de la compétition avec les bases de données relationnelles comme PostgreSQL. Au contraire, cette rivalité stimule l’innovation et pousse chaque technologie à s’améliorer continuellement.

En fin de compte, le choix entre MongoDB et PostgreSQL dépend des besoins spécifiques de chaque projet. Les entreprises doivent évaluer attentivement leurs exigences en matière de performance, de scalabilité, de flexibilité et de coût avant de prendre une décision. Ce qui est certain, c’est que MongoDB continuera à jouer un rôle crucial dans l’évolution des technologies de bases de données, offrant des solutions innovantes pour les défis de demain.

Les dernières nouvelles financières de MongoDB font suite à une période difficile pour la société de bases de données NoSQL. En mai, son évaluation a chuté d'un quart après que la société a revu à la baisse ses prévisions de croissance du chiffre d'affaires pour le reste de l'année, décevant ainsi les investisseurs.

Sources : résultats trimestriels MongoDB, appel avec les investisseurs

Et vous ?

Quels critères utilisez-vous pour choisir une base de données pour vos projets ?
Avez-vous déjà migré d’une base de données relationnelle comme PostgreSQL vers une base de données NoSQL comme MongoDB ? Si oui, quels ont été les défis et les avantages ?
Pensez-vous que la flexibilité du schéma de MongoDB justifie son adoption malgré les avantages traditionnels des bases de données relationnelles ?
Comment évaluez-vous l’importance de la scalabilité horizontale dans vos projets actuels et futurs ?
Quels sont, selon vous, les principaux inconvénients de MongoDB par rapport à PostgreSQL ? Quels sont les avantages ?
Comment voyez-vous l’évolution des bases de données dans les cinq prochaines années ?
Quel impact pensez-vous que ces technologies auront sur le développement de nouvelles applications et services ?

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de GATEN
Membre habitué https://www.developpez.com
Le 01/09/2024 à 11:07
Les cas d’usage entre MongoDB (noSQL) et Postgres (relationnel mais pouvant aussi faire du noSQL via les champs json) sont tout de même très différents.

En tout cas, je trouve triste de voir beaucoup de débutants ignorer les contraintes d’intégrité et aller vers du noSQL car ils ne connaissent que ça
6  0 
Avatar de Anselme45
Membre extrêmement actif https://www.developpez.com
Le 01/09/2024 à 12:01
MongoDB annonce une augmentation de 13% de ses revenus et attribue ce succès en partie à des victoires compétitives contre PostgreSQL
C'est pratique de se comparer au premier de classe... Pour résumer, MongoDB est la meilleure DB du monde!!!!!!!!!!!!!!!!!!!!!¨¨
1  0 
Avatar de Michel.Priori
Membre expérimenté https://www.developpez.com
Le 05/09/2024 à 22:00
Et oui les développeurs n'aiment pas les contraintes, alors quand on leur propose une base flexible = joie.
Le parallèle avec la sécurité est facile ; Everyone full-control, et on n'est pas gêné pour programmer.

Et du coup, j'aime bien la remarque comme quoi si les bases ne vieillissent pas bien c'est de la faute des développeurs qui ne se sont pas mis des contraintes ; amusant.

Accessoirement, le No-SQL à autre chose à présenter que le vieux relent « donnée vectorisée vs donnée hiérarchique ». Pas Mongo visiblement.
1  0 
Avatar de Anselme45
Membre extrêmement actif https://www.developpez.com
Le 01/09/2024 à 11:58
Citation Envoyé par lukskiwalker Voir le message
MongoDB, c'est la vie.
Plus sérieusement, commencer un nouveau projet avec MongoDB est un énorme gain de temps, notamment avec les nouvelles fonctionnalités intégrées de recherche, de géolocalisation et de vectorisation. C'est une base idéale à tout faire pour une petite équipe. Passé un certain niveau de complexité, il faut mettre en place des règles rigides et souvent un peu arbitraires, où tu dois tâtonner pour schématiser correctement tes données. C'est cette étape qui est souvent négligée, et donc on termine inévitablement avec une base tentaculaire, des requêtes lookup à gogo, et des performances qui s'écroulent.

Le problème est davantage du côté des développeurs que de l'outil. La plupart des devs ont un schéma de pensée relationnel, alors que pour bien utiliser MongoDB, il faut dénormaliser une base et utiliser le moins de clés étrangères possible, exactement l'inverse de PostgreSQL & co.

Il y a aussi des gens qui ont 10 ans de SQL avec certif qui ne supportent pas de voir autre chose.
Le wokisme est vraiment partout

Si on en croit la description que vous en faites, MongoDB, c'est "déconstruire" les bases de données des "hommes blancs de plus de 50 ans qui sont tous des "nazes" qui ne savent pas que le monde est avant tout LGBTQI++++++++++++++"... Je propose un slogan "MongoDB, "la femme à barbe de la donnée, la dragqueen de l'info!"
3  3 
Avatar de lukskiwalker
Membre à l'essai https://www.developpez.com
Le 01/09/2024 à 11:16
MongoDB, c'est la vie.
Plus sérieusement, commencer un nouveau projet avec MongoDB est un énorme gain de temps, notamment avec les nouvelles fonctionnalités intégrées de recherche, de géolocalisation et de vectorisation. C'est une base idéale à tout faire pour une petite équipe. Passé un certain niveau de complexité, il faut mettre en place des règles rigides et souvent un peu arbitraires, où tu dois tâtonner pour schématiser correctement tes données. C'est cette étape qui est souvent négligée, et donc on termine inévitablement avec une base tentaculaire, des requêtes lookup à gogo, et des performances qui s'écroulent.

Le problème est davantage du côté des développeurs que de l'outil. La plupart des devs ont un schéma de pensée relationnel, alors que pour bien utiliser MongoDB, il faut dénormaliser une base et utiliser le moins de clés étrangères possible, exactement l'inverse de PostgreSQL & co.

Il y a aussi des gens qui ont 10 ans de SQL avec certif qui ne supportent pas de voir autre chose.
1  4