0% ont trouvé ce document utile (0 vote)
19 vues10 pages

Chapitre 4

Le document présente une introduction aux bases de données NoSQL, en expliquant leur définition, caractéristiques et différences par rapport aux bases de données relationnelles. Il aborde également les limites des bases relationnelles et les solutions apportées par les bases NoSQL, ainsi que les différents types de bases NoSQL, notamment clé-valeur, colonne large, orientées documents et orientées graphes. Chaque type est décrit avec ses forces, faiblesses et cas d'utilisation.

Transféré par

kabemarianne
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
19 vues10 pages

Chapitre 4

Le document présente une introduction aux bases de données NoSQL, en expliquant leur définition, caractéristiques et différences par rapport aux bases de données relationnelles. Il aborde également les limites des bases relationnelles et les solutions apportées par les bases NoSQL, ainsi que les différents types de bases NoSQL, notamment clé-valeur, colonne large, orientées documents et orientées graphes. Chaque type est décrit avec ses forces, faiblesses et cas d'utilisation.

Transféré par

kabemarianne
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

INTRODUCTION AUX BASES DE DONNÉES NOSQL ET AUX BASES DE DONNÉES RELATIONNELLES.

SOMMAIRE

I. QU’EST CE QU’UNE BASE DE DONNÉES NoSQL........................................................2

II. DIFFÉRENCES ENTRE LES BASES DE DONNÉES NOSQL ET LES BASES DE


DONNÉES RELATIONNELLES.................................................................................................3

III. TYPES DE BASES DE DONNÉES NOSQL........................................................................4

1
INTRODUCTION AUX BASES DE DONNÉES NOSQL ET AUX BASES DE DONNÉES RELATIONNELLES.

PARTIE IV:
INTRODUCTION AUX BASES DE DONNÉE

I. QU’EST CE QU’UNE BASE DE DONNÉES


NoSQL

1- Définition
Une base de données NoSQL est une alternative aux bases de données SQL
traditionnelles. Au fil du temps, les bases de données relationnelles ont prouvé être inadéquates
pour certains cas d'utilisation spécifiques. Ces limitations variaient en fonction de l'application
qu'elles devaient supporter. Différents développeurs se sont concentrés sur la surmonte de
différents défis selon leurs besoins, ce qui a conduit à la création de différents types de bases de
données NoSQL.

2- Caractéristiques

Modèle :

• non relationnelle, pas de schéma pour les données ou schéma dynamique


• données de structures complexes ou imbriquées
Stockage distribué :

• partitionnement horizontal des données sur plusieurs nœuds (serveurs)


• usage de Hadoop et MapReduce
• réplication des données sur plusieurs nœuds
Propriétés et usages :

• privilégient la Disponibilité (A) à la Cohérence (C) (théorème de CAP)

2
INTRODUCTION AUX BASES DE DONNÉES NOSQL ET AUX BASES DE DONNÉES RELATIONNELLES.

• compromis sur le caractère « ACID » pour plus de scalabilité horizontale et d’évolutivité


: modèle « BASE »
• en conséquence ont rarement de gestion de transactions
• mode d'utilisation : peu d'écritures, beaucoup de lectures

II. DIFFÉRENCES ENTRE LES BASES DE


DONNÉES NOSQL ET LES BASES DE DONNÉES
RELATIONNELLES

1- Différence

Les bases de données NoSQL sont conçues pour être plus flexibles et évolutives que les
bases de données relationnelles traditionnelles. Elles ne nécessitent pas de structure prédéfinie, ce
qui leur permet de stocker des données de manière plus flexible et rapide. Les bases de données
NoSQL sont particulièrement adaptées pour gérer de grandes quantités de données simples, telles
que le caching, le stockage, la gestion des sessions utilisateur, le service publicitaire et les
recommandations. En revanche, les bases de données relationnelles sont structurées en tables
avec des colonnes et des lignes, ce qui peut limiter leur flexibilité et leur évolutivité.

2- Limites des bases de données relationnelles

Limites liées au volume des données

 Les BD relationnelles peuvent gérer de très gros volumes de données : usage de machine
bases de données pour des entrepôts de données (par distribution des données sur de
nombreux disques permettant une parallélisation des requêtes).
 Mais ces machines ne peuvent gérer des méga données es au-delà̀ d’un certain volume.
- Stockage et traitement fortement distribués des données sur des serveurs (Data
Centers)

3
INTRODUCTION AUX BASES DE DONNÉES NOSQL ET AUX BASES DE DONNÉES RELATIONNELLES.

- Map-Reduce et Hadoop …

Limites liées à la variété des données


 Le modèle relationnel est fortement structuré et rigide (tables de données, formes
normales …)
 Les méga données et les applications Web concernent des données souvent peu
structurées et hétérogènes (textes, images, …) mal adaptées.

3- Nouvelles solutions : BD NoSQL


 Face aux limites des BD relationnelles de nouvelles solutions ont vu le jour permettant
une meilleure scalabilité dans des contextes fortement distribués (cluster de serveurs, data
centers) une gestion d’objets complexes et hétérogènes sans avoir à déclarer au préalable
l’ensemble des champs représentant un objet (modèles de données flexibles ou pas de
modèle du tout)
 Solutions regroupées derrière le terme NoSQL (Carl Strozzi)
 Solutions ne se substituant pas aux SGBD Relationnels mais les complétant en comblant
leurs faiblesses (NotOnlySQL) dans certains contextes d’applicatifs spécifiques (méga
données et applications Web).

4
INTRODUCTION AUX BASES DE DONNÉES NOSQL ET AUX BASES DE DONNÉES RELATIONNELLES.

III. TYPES DE BASES DE DONNÉES NOSQL

1- Bases de données NoSQL clé-Valeur

Les bases de données clé-valeur sont le type le plus simple de base de données NoSQL. Elles
sont optimisées pour la mise à l'échelle horizontale, permettant une gestion efficace de grandes
quantités de données simples. Elles sont souvent utilisées pour le caching, le stockage, la gestion
des sessions utilisateur, le service publicitaire et les recommandations.

 Les données sont simplement représentées par un couple clé/valeur


 La valeur peut être une simple chaîne de caractères, ou un objet sérialisé…

Cette absence de structure ou de typage ont un impact important sur les requêtes : toute
l’intelligence portée auparavant par les requêtes SQL devra être portée par l’applicatif qui
interroge la BD.

 Implémentations les plus connues :


- Amazon Dynamo (Riak en est l'implémentation Open Source)
- Redis (projet sponsorisé par VMware)
- Voldemort (développé par LinkedIn en interne puis passage en open source)
 Chaque objet est identifié par une clé unique seule façon de le requêter :

Clé (de l’objet) --------> Valeur(s)

 La structure de l’objet est libre, souvent laissé à la charge du développeur de l’application


(XML, JSON, ...), la base ne gérant généralement que des chaînes d’octets.

5
INTRODUCTION AUX BASES DE DONNÉES NOSQL ET AUX BASES DE DONNÉES RELATIONNELLES.

Forces Faiblesses Utilisation


Modèle de données simple. Pauvre pour les données Dépôts de données avec besoins
complexes. de requêtes simples.
Bonne mise à l’échelle Interrogation seulement
horizontale pour les lectures sur clé.
et écritures (évolutivité,
disponibilité).

2- Bases de données NoSQL colonne large

Les bases de données de colonne large stockent les données et les groupes de données
dans des colonnes séparées plutôt que dans des lignes. Elles sont hautement flexibles, sans
clés ni noms de colonnes prédéfinis, permettant une variation des noms de colonnes même au
sein de la même table et l'ajout de colonnes en temps réel. Elles sont excellentes pour stocker
de grandes quantités de données dans une seule colonne, réduisant ainsi les ressources disque
et le temps nécessaire pour récupérer les informations.

 Les données sont stockées par colonne, et non par ligne


 On peut facilement ajouter des colonnes aux tables, par contre l'insertion d'une ligne est
plus coûteuse
 Quand les données d'une colonne se ressemblent, on peut facilement compresser la
colonne
 Implémentation les plus connues :
- HBase (Open Source de BigTable de Google utilisé pour l'indexation des pages web,
Google Earth, Google analytics, ...)
- Cassandra (fondation Apache qui respecte l’architecture distribuée de Dynamo
d’Amazon, projet né de chez Facebook)
- SimpleDB de Amazon

6
INTRODUCTION AUX BASES DE DONNÉES NOSQL ET AUX BASES DE DONNÉES RELATIONNELLES.

Forces Faiblesses
Modèle de données simple supportant des A éviter pour des données interconnectées.
données semi-structurées.

Naturellement indexé (colonnes) Exige de la maintenance.

3- Bases de données NoSQL orientées documents

Les bases de données documentaires consistent en des ensembles de paires clé-valeur


stockées dans un document. Elles permettent de stocker des données sans avoir à mettre en œuvre
un schéma, offrant une grande flexibilité. Les documents peuvent être regroupés en collections
(bases de données) en fonction de leur fonctionnalité. Elles sont idéales pour les cas d'utilisation
nécessitant une flexibilité et un développement rapide.

 Elles stockent une collection de "documents"


 Elles sont basées sur le modèle « clé-valeur » mais la valeur est un document en
format semi-structuré hiérarchique de type JSON ou XML (possible aussi de stocker
n'importe quel objet, via une sérialisation)
 Les documents n'ont pas de schéma, mais une structure arborescente : ils contiennent
une liste de champs, un champ a une valeur qui peut être une liste de champs, ...
 Elles ont généralement une interface d’accès HTTP REST permettant d’effectuer des
requêtes (plus complexe que l’interface CRUD des BD clés/valeurs)
 Implémentations les plus connues :
o CouchDB (fondation Apache)
o RavenDB (pour plateformes « .NET/Windows » - LINQ)
o MongoDB, Terrastore, …

7
INTRODUCTION AUX BASES DE DONNÉES NOSQL ET AUX BASES DE DONNÉES RELATIONNELLES.

Forces Faiblesses Utilisation


Modèle de données Inadaptée pour des données Enregistrement
simple mais puissant. interconnectées. d’évènements.

Forte expressivité de Modèle de requête limitée à des Web analytique ou analytique


requête. clés et est lent pour les grandes temps réel.
requêtes.

4- Bases de données NoSQL orientées graphes

Les bases de données graphe utilisent une représentation graphique flexible pour gérer les
données. Elles sont particulièrement adaptées pour les cas d'utilisation nécessitant des
représentations graphiques, comme les réseaux sociaux pour stocker des informations sur la
manière dont leurs utilisateurs sont liés.

 Elles permettent la modélisation, le stockage et la manipulation de données complexes


liées par des relations non-triviales ou variables

Modèle de représentation des données basé sur la théorie des graphes

 S’appuie sur les notions de nœuds, de relations et de propriétés qui leur sont
rattachées.
 Implémentations les plus connues :

- Neo4J
- OrientDB (fondation Apache)

8
INTRODUCTION AUX BASES DE DONNÉES NOSQL ET AUX BASES DE DONNÉES RELATIONNELLES.

Forces Faiblesses Utilisation


Modèle de données Plus délicate et parfois Business Intelligence et
puissant. fractionnement possible. social computing.

Rapide pour les données Web sémantique et Internet


liées et bien plus rapide des objets.
que un SGBDR.

9
INTRODUCTION AUX BASES DE DONNÉES NOSQL ET AUX BASES DE DONNÉES RELATIONNELLES.

Table des matières

I. QU’EST CE QU’UNE BASE DE DONNÉES NoSQL...................................2


1- Définition......................................................................................................2

2- Caractéristiques...........................................................................................2

II. DIFFÉRENCES ENTRE LES BASES DE DONNÉES NOSQL ET LES


BASES DE DONNÉES RELATIONNELLES......................................................3
1- Différence.....................................................................................................3

2- Limites des bases de données relationnelles..............................................3

3- Nouvelles solutions : BD NoSQL................................................................4

III. TYPES DE BASES DE DONNÉES NOSQL..................................................4


1- Bases de données NoSQL clé-Valeur.............................................................................4

2- Bases de données NoSQL colonne large........................................................................5

3- Bases de données NoSQL orientées documents............................................................6

4- Bases de données NoSQL orientées graphes.................................................................7

10

Vous aimerez peut-être aussi