Pour savoir où on va, il faut savoir d'où l'on vient

Vous avez
une question ?
Un projet ?

Contactez nous !
 

Contactez-nous

Vous avez une question ? un projet ? 
Vous souhaitez plus d'informations sur un produit ? sur notre offre ? 
Contactez-nous, on vous répond sous 4H.

retour

Stockage distribue-NOSQL

Stockage distribue-NOSQL

NoSQL, pour Not Only SQL désigne les systèmes de gestion de base de données qui ne s’appuient plus, du fait des volumétries et de la variété des données contenues, sur une architecture relationnelle et transactionnelle.
Ces systèmes privilégient la simplicité et l’évolutivité de la capacité via des architectures distribuées.

Limites des SGBDR dans les architectures distribuées

Outre leur modèle relationnel, la plupart des moteurs de SGBDs relationnels sont transactionnels ce qui leur impose le respect des contraintes Atomicity Consistency Isolation Durability, communément appelé par son acronyme ACID.

Screenshot from 2015-04-08 09:43:47

Il est actuellement impossible d’obtenir ces trois propriétés en même temps dans un système distribué. Sur de nombreux SGBDR classiques, la réplication devient plus complexe avec de fortes volumétries et une forte vélocité des données.

Principes de distribution et de réplication des données

Les capacités de montée en charge des bases NoSQL reposent, au delà de leur simplicité, sur la distribution (sharding) et la réplication des données sur différents noeuds (cluster de quelques serveurs à plusieurs DataCenter).
Pour simplifier, une analogie peut être faite entre les mécanismes de partitionnements verticaux (sur plusieurs tables physiques de la même instance) de certains moteurs de bases de données relationnelles et la distribution horizontale (sur plusieurs serveurs) des données en NoSQL.
Les données peuvent également être répliquées, sur un principe analogue aux mécanismes de stockage en RAID, afin de garantir un haut niveau de service, même en cas de problème ou de maintenance d’un nœud du cluster.

Structures des bases et organisation des données NoSQL

Il existe plusieurs paradigmes au niveau des systèmes de stockage NoSQL :

Type documentaire
Les bases de données documentaires sont constituées de collections de documents. Les collections sont généralement assimilées à des tables d’un modèle relationnel.
Bien que les documents soient structurés, ces bases sont sans schéma de données prédéfini. Il n’est donc pas nécessaire de définir au préalable l’ensemble des champs utilisés dans un document. Les documents peuvent donc avoir une structure hétérogène au sein de la base.
Un document est composé de champs et de valeurs associées, ces dernières pouvant être requêtées. Les valeurs peuvent être, soit d’un type simple (entier, chaîne de caractère,date, ...), soit composées de plusieurs couples clé/valeur (imbrications nested sets).
Les structures de données sont donc très souples.

Screenshot from 2015-04-08 09:48:35

La souplesse du modèle de données, les performances et les capacités de requêtage orientent l’usage des bases documentaires vers du stockage opérationnel de masse (ODS) dans un système décisionnel.

Type graphe

Au delà du moteur de stockage sous la forme d’une base documentaire, ce type de base propose également des relations entre objets. Ces derniers sont orientés et peuvent porter des propriétés.

Type orienté colonnes

La colonne représente l’entité de base de la structure de données. Chaque colonne d’un objet est défini par un couple clé / valeur. Une colonne contenant d’autres colonnes est nommée super­colonne.

Screenshot from 2015-04-08 09:51:33

Ces types de bases sont adaptés au stockage opérationnel de masse (ODS) et de source d’analyses massives dans un système décisionnel.

Type clé/valeur
Dans ce modèle, chaque objet/enregistrement est identifié par une clé unique.
La structure de l’objet est libre.

Screenshot from 2015-04-08 09:53:47

Dans ce modèle on ne dispose généralement que des quatre opérations Create, Read, Update, Delete (CRUD) en utilisant la clé de l’enregistrement à manipuler.

Du fait des limites fonctionnelles d’accès aux données de ces types de base, nous ne leur voyons pas d’application décisionnelle.