La fin de SQL pour les applications Web ? Après une présentation de l'excellent CouchDB ([LMAG117] et [LMAG124]), voici une alternative aussi originale avec MongoDB. Cette présentation en deux parties s'adresse tout d'abord aux concepteurs de schéma de SGBD-R ainsi qu'aux développeurs. Dans un deuxième article, nous présenterons les fonctionnalités d'administration en mettant l'accent sur les points forts de MongoDB.
1. Introduction
Encore à l'heure actuelle, l'immense majorité des applications Web utilise des bases de données relationnelles, exploitées à l'aide du langage SQL. Les services rendus par ces SGBD-R sont indéniables, mais à l'usage, il s'avère que certaines limitations les rendent inefficaces. Il est difficile par exemple de paralléliser des jointures. Le partitionnement "horizontal" n'est pas toujours natif ou réellement distribué. En terme de souplesse, certains fustigent la rigueur du "schéma", et d'autres – les mêmes ? - dénigrent la lourdeur des couches intermédiaires qui réalisent l'interface objet-transactionnel (ORM)...
Il existe d'autres modèles de représentation des données. Par exemple Redis (voir [LMAG129]) qui exploite des paires clés/valeurs, ou CouchDB (voir [LMAG114]) qui gère des "documents".
MongoDB [MON] est aussi une base de données orientée-documents qui a été conçue pour être rapide et facilement dimensionnable (scalable...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première