Le NoSQL

Posted by IT NISRO 0 commentaires

Définition

Le NoSQL (Not only SQL) désigne une catégorie de base de données apparue en 2009 qui se différencie du modèle relationnel que l'on trouve dans des bases de données connues comme MySQL ou PostgreSQL. Ceci permet d'offrir une alternative au langage SQL.

Pourquoi le NoSQL ?

Le NoSQL est apparu afin de contrer la dominance des bases de données relationnelles dans le domaine de l'internet. En effet, un des problème récurrent des bases de données relationnelles est la perte de performance lorsque l'on doit traiter un très gros volume de données. De plus, la multiplication des architectures distribués a apporté le besoin de disposer de solution s'adaptant nativement aux mécanismes de réplication des données et de gestion de la charge.

Les familles de NoSQL

Le NoSQL regroupe 4 grandes familles de base de données qui permettent d'offrir une représentation différentes des données, chacune dispose d'avantages et d'inconvénients en fonction du contexte dans lequel on souhaite l'utiliser.

Parmi celle-ci on trouve les bases de données clé-valeur.

La représentation en clé-valeur est la plus simple et est très adaptée aux caches ou aux accès rapides aux informations. Cette représentation permet en général d’atteindre des performances bien supérieures dans la mesure où les lectures et écritures sont réduites à un accès disque simple. On trouve 3 différentes implémentations: RiakRedis et Voldemort.

Il existe ensuite les bases de données orientées colonnes.

Le réprésentation orientée colonnes est celle qui se rapproche le plus des tables dans une base de données relationnelles. Elles permettent d'être beaucoup plus évolutive et flexible puisqu'on peut disposer de colonnes différentes pour chaque ligne. On trouve 2 types d'implémentations: HBase et Cassandra.

Il y a ensuite les bases de données orientées document.

La représentation orientée document est plus adaptée au monde de l'internet. Cette représentation est très proche de la représentation clé-valeur à l'exception faite que la valeur est représentée sous la forme d'un document. On peut retrouver dans ce document les données organisées de manière hiérarchique comme ce que l'on trouve dans un fichier XML ou JSON. On trouve 2 types d'implémentations: CouchDB et MongoDB.

Pour finir il existe les bases de donées orientées graphe.

La représentation orientées graphe est pour palier à des problèmes impossibles à résoudre avec des BDD relationnelles. Le cas d'utilisation typique est bien sur les réseaux sociaux où l'aspect graphe prend tout son sens, mais aussi où des relations complexes entre les acteurs ont besoin d'être décrits. On trouve 3 implémentations différentes: Neo4jHypergraphDB et FlockDB.



0 commentaires:

Enregistrer un commentaire

Membres

Formulaire de contact

Nom

E-mail *

Message *