
Microsoft a dévoilé DocumentDB, une base de données NoSQL open source conçue pour être compatible avec MongoDB. Microsoft espère que DocumentDB contribuera à faire de PostgreSQL une norme ANSI pour les bases de données NoSQL. En outre, Microsoft rapporte qu'après son lancement, DocumentDB gagne du terrain dans le monde des bases de données open-source
Microsoft a annoncé la sortie officielle de DocumentDB en tant que "plateforme de base de données documentaire" open-source qui alimente Azure Cosmos DB pour MongoDB et s'appuie sur PostgreSQL. DocumentDB se veut un magasin de données NoSQL open-source implémenté sur PostgreSQL. DocumentDB de Microsoft est sous licence MIT et la société accueillera volontiers les contributions de la communauté.
Les bases de données NoSQL ont historiquement fourni des solutions spécifiques au cloud sans standard commun pour l'interopérabilité. Cela a conduit à une demande croissante pour une instance locale interopérable, portable et entièrement supportée, prête à la production, d'un magasin de données documentaires. DocumentDB a pour objectif d'offrir une norme pour les bases de données NoSQL pour une plus grande souplesse dans le choix et le passage d'une base de données NoSQL à l'autre.
De plus, la dernière décennie a vu une explosion de la popularité de PostgreSQL au sein de la communauté des développeurs. Ainsi, pour répondre aux besoins de la communauté en matière de bases de données NoSQL et à l'adoption universelle de PostgreSQL, DocumentDB est une plateforme open-source entièrement permissive pour les magasins de données documentaires construits sur le puissant moteur PostgreSQL.
En 2025, il n'est pas surprenant que Microsoft annonce une solution logicielle de base de données open-source, mais ce qui est étrange, c'est que Microsoft nomme cette base DocumentDB étant donné qu'Amazon DocumentDB existe déjà depuis six ans. Amazon DocumentDB est également une base de données NoSQL axée sur la compatibilité avec MongoDB, mais un logiciel propriétaire. Il ne semble pas que les produits de Microsoft et d'Amazon aient un lien. Et Microsoft Azure et Amazon AWS sont des concurrents directs dans l'espace cloud.
DocumentDB : une plateforme de base de données documentaire open-source
Voici les missions de DocumentDB selon Microsoft :
- Visibilité
La mission de DocumentDB est de fournir à la communauté des développeurs un magasin de données NoSQL, implémenté avec PostgreSQL, avec une visibilité complète sur l'architecture et l'implémentation du moteur. Tous les composants de base du moteur de base de données, des opérations CRUD (Create, Read, Update, Delete) à l'indexation et à la fonctionnalité de recherche vectorielle, sont publics.
De plus, PostgreSQL a connu une popularité fulgurante grâce à son ensemble de fonctionnalités en constante évolution et à son riche écosystème d'extensions. Microsoft a lancé DocumentDB, une plateforme open-source basée sur PostgreSQL sur laquelle une expérience de base de données documentaire de bout en bout peut être construite, afin de répondre aux besoins de la communauté en matière de bases de données NoSQL. - L'octroi de licences
Pour respecter le véritable esprit de l'open source, le projet utilise la licence MIT la plus permissive, où les développeurs n'ont aucune restriction sur l'incorporation du projet dans des solutions nouvelles et existantes de leur propre chef. Il n'y a pas de frais de licence commerciale, pas de restrictions d'utilisation ou de distribution, et pas de gadgets. Bien que les contributions au projet soient toujours les bienvenues et encouragées, il n'y a aucune obligation pour les utilisateurs de livrer leurs personnalisations, contributions et améliorations au projet. La licence MIT garantit la liberté totale de forker le dépôt, de l'utiliser et de le distribuer sans aucune obligation. - Norme open-source
DocumentDB est la première mise en œuvre de la mission plus ambitieuse du projet, qui consiste à créer une norme pour les bases de données documentaires libres, à l'instar de la norme SQL de l'ANSI (American National Standards Institute) pour les bases de données relationnelles. La création d'une norme NoSQL améliorera la compatibilité et l'interopérabilité des moteurs NoSQL à l'avenir. La motivation derrière la norme est de minimiser les différences dans les API (interfaces de programmation d'applications) orientées vers le public et les principes fondamentaux des moteurs entre les implémentations de bases de données NoSQL. Globalement, cela permettra d'améliorer l'expérience des développeurs lors de l'intégration de bases de données documentaires et, plus important encore, lors du passage d'une base de données à une autre.
Concernant l'architecture du projet, DocumentDB est constitué de deux composants principaux, qui travaillent ensemble pour soutenir les opérations de documents :
- pg_documentdb_core : Une extension PostgreSQL personnalisée optimisant le support du type de données BSON (Binary JavaScript Object Notation) dans Postgres.
- pg_documentdb_api : Le plan de données implémentant les opérations CRUD, les fonctionnalités de requête et la gestion de l'index.
Pour les contributeurs, l'extension pg_documentdb_core devrait fournir les capacités suivantes :
- La possibilité d'analyser et de manipuler les documents BSON dans la couche Postgres du moteur de base de données, à tous les niveaux d'imbrication du document BSON.
- La possibilité d'indexer les champs du document BSON - y compris les index de champ unique, les index à clés multiples, les index composés pour optimiser les critères de filtrage des requêtes sur plusieurs champs, les index de texte ainsi que les index géospatiaux utilisant les capacités de l'extension PostGIS.
- La possibilité d'effectuer des recherches vectorielles grâce à l'extension Postgres pg_vector. Les cas d'utilisation courants sont les suivants :
- Applications d'IA générative, chatbots, agents d'IA
- Cas d'utilisation pour la détection des fraudes et des anomalies dans les services financiers
- Recherche de similarité pour les systèmes de recommandation de produits dans les applications de vente au détail
- Traitement du langage naturel
- Filtrage de contenu
- Modèles RAG (Retrieval-Augmented Generation) pour des réponses de recherche contextuelles.
- Un mécanisme d'authentification entièrement fonctionnel, y compris l'authentification SCRAM (Salted Challenge Response Authentication Mechanism).
Ces fonctionnalités en bas de la pile serviront de base à la construction d'une expérience utilisateur de base de données NoSQL de bout en bout. Une couche de traduction de protocole peut être construite au sommet de cette pile pour convertir le protocole de base de données NoSQL entrant choisi dans le protocole Postgres sous-jacent.
Les utilisateurs à la recherche d'une base de données NoSQL prête à l'emploi peuvent tirer parti d'une solution existante, FerretDB, alimentée par DocumentDB en tant que moteur d'appui. FerretDB est un entrepôt de données documentaires open-source populaire dont la version la plus récente (FerretDB 2.0) s'appuie sur DocumentDB. Alors que les utilisateurs peuvent interagir avec DocumentDB via Postgres, FerretDB 2.0 fournit une interface avec un protocole de base de données documentaire. FerretDB bénéficie également d'une licence Apache tout aussi permissive et d'une présence significative dans les communautés Postgres et NoSQL.
Voici les réactions à la sortie de DocumentDB partagés par Microsoft :
Peu de temps après avoir dévoilé DocumentDB, notre plateforme de base de données documentaire open-source qui alimente Azure Cosmos DB for MongoDB, basée sur vCore, les réactions ont été tout simplement phénoménales. En peu de temps, nous avons reçu beaucoup d'attention de la part des médias technologiques et des membres de la communauté.
Les développeurs et les passionnés de bases de données ont adopté DocumentDB avec un enthousiasme débordant, suscitant rapidement l'intérêt des utilisateurs et des contributeurs. En un peu moins d'une semaine, notre projet a gagné 1000 étoiles GitHub, près de 50 forks, et de multiples pull requests et issues - une preuve évidente de l'intérêt qu'il suscite.
Les passionnés de PostgreSQL s'intéressent activement à DocumentDB - beaucoup d'entre eux explorent déjà des moyens innovants de l'incorporer dans leurs projets et de contribuer à son développement. L'adoption rapide par la communauté open-source souligne le potentiel de DocumentDB à combler le fossé entre les paradigmes des bases de données relationnelles et documentaires.
Les développeurs et les membres de la communauté ont manifesté un vif intérêt pour l'élaboration de la vision et de la feuille de route du projet, ainsi que pour la manière dont DocumentDB améliore l'interopérabilité des magasins de données NoSQL. Nous avons déjà reçu des suggestions pour permettre la prise en charge de PG 17 et pour clarifier la raison pour laquelle nous avons choisi RUM plutôt qu'un B-Tree pour l'indexation, parmi d'autres recommandations.
Les développeurs et les passionnés de bases de données ont adopté DocumentDB avec un enthousiasme débordant, suscitant rapidement l'intérêt des utilisateurs et des contributeurs. En un peu moins d'une semaine, notre projet a gagné 1000 étoiles GitHub, près de 50 forks, et de multiples pull requests et issues - une preuve évidente de l'intérêt qu'il suscite.
Les passionnés de PostgreSQL s'intéressent activement à DocumentDB - beaucoup d'entre eux explorent déjà des moyens innovants de l'incorporer dans leurs projets et de contribuer à son développement. L'adoption rapide par la communauté open-source souligne le potentiel de DocumentDB à combler le fossé entre les paradigmes des bases de données relationnelles et documentaires.
Les développeurs et les membres de la communauté ont manifesté un vif intérêt pour l'élaboration de la vision et de la feuille de route du projet, ainsi que pour la manière dont DocumentDB améliore l'interopérabilité des magasins de données NoSQL. Nous avons déjà reçu des suggestions pour permettre la prise en charge de PG 17 et pour clarifier la raison pour laquelle nous avons choisi RUM plutôt qu'un B-Tree pour l'indexation, parmi d'autres recommandations.
Et vous ?


Voir aussi :



Vous avez lu gratuitement 6 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.