LMi-MAG15 sept - Flipbook - Page 45
© Just Super - iStock
L
es bases de données NoSQL ont progressivement gagné en popularité au fur et à mesure que
le volume de données (surtout semi-structurées
et non structurées) à traiter et la complexité de
leur modalisation explosaient. En effet, contrairement
aux classiques bases de données relationnelles (schéma prédéfini, évolutives verticalement et gourmandes
en ressources matérielles notamment), qui n’ont pas été
conçues à l’origine pour une manipulation massive de
données, les bases de type NoSQL sont beaucoup plus
rentables car elles distribuent efficacement les données
et ne suivent pas ce modèle traditionnel et rigide de normalisation de données ou de mapping relationnel.
Ce sont surtout les grands acteurs du cloud (AWS, Google,
Facebook, etc.) qui ont démocratisé les bases de données
NoSQL, d’abord pour répondre à leurs propres besoins
d’efficacité et de performances. « A partir de 2004, après
une série de bugs pendant la période des fêtes et des
soldes sur l’architecture monolithique de notre plateforme de commerce électronique Amazon.com, nous
avons commencé à réfléchir à ce que nous pouvions
améliorer. Nous avons donc fait le choix des microservices et des API, l’accès direct à la base de données
n’étant plus une option. De plus, nos modèles d’utilisation, notamment pour la gestion des sessions ou des
paniers des consommateurs, ne nécessitaient pas la
complexité d’une base de données relationnelle, d’où
la création de notre base clé-valeur non relationnelle
Dynamo », donne en exemple Sébastien Stormacq, développeur senior chez AWS.
A chaque besoin, sa base de données
Dans cette galaxie des bases de données NoSQL, il en
existe plusieurs types qui peuvent, dans certains cas,
correspondre à des besoins différents. Déjà les bases
de données à clé-valeur, comme DynamoDB ou Redis,
conviennent parfaitement pour les applications Web
dans la gestion de sessions ou des paniers ; ces bases, qui
exploitent une méthode clé-valeur simple pour stocker
des données, sont essentiellement sollicitées pour leurs
performances.
Les bases de données de type documents, comme MongoDB ou Couchbase, stockent et interrogent les données
sous forme de documents de type JSON ou XML, c’està-dire en utilisant le même format de modèle de
45