Comment choisir son API NoSQL?

Cet article a pour but de vous aider à choisir quel api NoSQL à utiliser dans le cadre de votre projet.

Tout d’abord, NoSQL, qu’est ce que c’est?

Le NoSQL (Not Only SQL) correspond à une famille de gestion de base de données. Le NoSQL fait le même travail que le SQL (à savoir le stockage de données) mais dispose de caractéristiques différentes.

A savoir,

  • Le Volume. Une base NoSQL permet de stocker un nombre très important de données. C’est pour cette raison que des bases NoSQL sont utilisées dans le cadre de projets BigData (projets manipulant énormément de données).
  • La Variété. Dans une base NoSQL, il est possible de stocker les données sous différents formats (on les verra un peu plus tard dans cet article). On peut aussi appeler cela « Schema-Free ».
  • La Vélocité. La plupart des bases NoSQL permettent une réplication de données dans un environnement distribué assurant ainsi une haute disponibilité de celles-ci à faible latence.

On parle alors des 3V au sujet du NoSQL…

NoSQL donne la possibilité de stocker les information de différentes façons.

Les différents types d’API NoSQL

Une base de donnée Clé-Valeur : ce type de base permet d’accéder à une valeur au moyen d’une clé. C’est la plus simple des bases NoSQL.

Une base de données orientée Documents : ce type de base stocke des données dans un document généralement au format JSON ou XML. Elle ressemble à une base de données clé-valeur, cependant l’ensemble des données correspondant à la valeur est décrite dans une structure plus complexe qu’une simple donnée.

Une base de données orientée Colonnes : ce type de base stocke les données non pas en ligne (comme les bases de données relationnelles) mais en colonnes.

Une base de données orientée Graphes : ce type de base stocke les données en utilisant la théorie mathématique des graphes.

Chaque API décrite au dessus pourra être choisie suivant le contexte, le type d’applications et son utilisation future.

On peut parler aujourd’hui d’un terme spécifique résumant cela : la persistance polyglotte.

Dans quel cas utiliser chaque API?

Base de donnée Clé-Valeur : ce type de base répondra au besoin d’une grande disponibilité et d’une faible latence (vu la simplicité du mode de stockage des informations). Elle pourra être utilisée dans le cas de la gestion de session ou de profils utilisateurs par exemple.

Base de données orientée Documents : ce type de base répondra au besoin de stocker différents types de données pour le document. Grace à la non rigidité de la structure du schéma du document, elle pourra être utilisée dans la cas de la gestion de contenu ou de commerce en ligne par exemple.

Base de données orientée Colonnes : ce type de base répondra au besoin de stocker des données où peu d’opérations en écriture devront avoir lieu sur celles-ci (performant en mode lecture). Elle pourra être utilisée dans le cas de système de comptage par exemple.

Base de données orientée Graphes : ce type de base répondra au besoin dans des situations où des données seront interconnectés entre elles avec un nombre indéterminé de connexion. Elle n’est absolument pas adapté aux données changeant fréquemment ainsi qu’aux grands volumes de données. Elle pourra être utilisée dans le cas de gestion de réseaux publics, de cartes routières ou même de réseaux sociaux (Linkedin, Facebook)

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.