Vous êtes sur la page 1sur 17

Cours Big Data – Chapitre V Niveau : 3ème année

Chapitre V :
Bases de données NOSQL

D R. RAOU D HA C HEBIL ENS I

Plan
 Forces des SGBDR
 Limites des BDR
 BD NOSQL
 BDR vs BD NOSQL
Etude d’instances de BD NOSQL
Cassandra
MongoDB

2
2

Enseignante : R. CHEBIL 1
Cours Big Data – Chapitre V Niveau : 3ème année

Forces des SGBDR


 Indépendance entre :
Modèle de données et structures de stockage
Requêtes déclaratives et exécution
 Possibilité d’exécuter des requêtes complexes

 Optimisation très fine des requêtes, index


permettant un accès rapide aux données

 Logiciels mûrs, stables, efficaces, riches en


fonctionnalités et en interfaces
3
3

Forces des SGBDR


 Contraintes d’intégrité permettant d’assurer des
invariants sur les données.

 Gestion efficace de grands volumes de données


(gigaoctet, voire téraoctet).

 Gestion des transactions (ensembles d’opérations


atomiques) garantissant la gestion de la
concurrence et la reprise sur panne.

4
4

Enseignante : R. CHEBIL 2
Cours Big Data – Chapitre V Niveau : 3ème année

Propriétés ACID

Les transactions des SGBD relationnels classiques


respectent les propriétés ACID.

Atomicité – Cohérence – Isolation – Durabilité

5
5

Propriétés ACID
Atomique (Atomic)

• Pas de modification partielle : Une transaction est une unité logique de


travail qui doit être effectuée en bloc ou annulée en bloc.

Cohérence

• A la fin de la transaction, les données doivent être dans un état cohérent qui
respecte les contraintes d’intégrité.

Isolation

• Deux exécutions concurrentes de transactions donnent un état équivalent à


l’exécution en série des transactions.

Durabilité

• Une fois qu’une transaction est confirmée, les données restent durablement
dans la base même en cas de panne. 6

Enseignante : R. CHEBIL 3
Cours Big Data – Chapitre V Niveau : 3ème année

Limites des BDR


 Incapable de gérer de très grands volumes de données
(de l’ordre du péta-octets)

 Impossible de gérer des débits extrêmes (plus que


quelques milliers de requêtes par seconde)

 Le modèle relationnel est parfois peu adapté au stockage


et à l’interrogation de certains types de données
Données hiérarchiques, semi-structurées

7
7

Limites des BDR


 Les propriétés ACID entraînent de sérieux surcoûts en
latence, accès disques, temps CPU (verrous,
journalisation, etc.)

 Performances limitées par les accès disque.

8
8

Enseignante : R. CHEBIL 4
Cours Big Data – Chapitre V Niveau : 3ème année

Bases de données NOSQL


 Not Only SQL

 SGBD avec d’autres compromis que ceux faits par les


systèmes classiques.

 Caractéristiques recherchées : modèle de données différent,


passage à l’échelle, performances extrêmes

 Caractéristiques abandonnées : ACID, (parfois) requêtes


complexes.

9
9

Bases de données NOSQL


Types des bases de données NOSQL :
 Clef/valeur
 Orientées colonnes
 Orientées documents
 Orientées graphes

10
10

Enseignante : R. CHEBIL 5
Cours Big Data – Chapitre V Niveau : 3ème année

Bases de données NOSQL


Modèle Clef-Valeur
 L’un des types les plus simples : sorte de Hashmap distribuée.

 Conçues pour sauvegarder les données sans définir de


schéma.

 Chaque objet de la base représenté par un couple (clé,valeur)


est identifié par une clé unique qui est le seul moyen d’accès à
l’objet

11
11

Bases de données NOSQL


 La clé peut être de type String, Hash, List, Set, Sorted Set.
 La valeur peut être de type String, Objet sérialisé, BLOB
(basic large object) ...
 Les 4 opérations CRUD :
 create(clé,valeur) : crée un couple (clé,valeur)
 read(clé) : lit une valeur à partir de sa clé
 update(clé,valeur) : modifie une valeur à partir de sa clé
 delete(clé) : supprime un couple à partir de sa clé
 L’absence de typage a un impact sur le requêtage : toute
l’intelligence portée avant par les requêtes devra être portée par
l’applicatif qui interroge la BD
12
12

Enseignante : R. CHEBIL 6
Cours Big Data – Chapitre V Niveau : 3ème année

Bases de données NOSQL


Logiciels :
 DynamoDB (Amazon),
 Azure Table Storage (ATS),
 Redis,
 BerkeleyDB,
 Voldemort (LinkedIn)
Cas d’utilisation :
Dépôt de masses de données avec des besoins de requêtage simple pour des
analyses en temps-réel:
 sessions web et fichiers log,
 profils utilisateurs,
 données de capteurs.

13
13

Bases de données NOSQL


Id Nom Humeur Date_naissance Couleur

12 Stella Heureuse 2007-04-01 NULL

13 Wimma Faim NULL Noire

9 Ninja NULL NULL NULL

Nom_$#_Stella~~Humeur_$#_Heureuse
Chien_12 ~~Date_naissance_$#_2007-04-01…

14
14

Enseignante : R. CHEBIL 7
Cours Big Data – Chapitre V Niveau : 3ème année

Bases de données NOSQL


Critiques

 Simple  Interrogation seulement sur


 Très performant / Requêtes la clé
optimales à temps constants  Complexité des valeurs à
/Performances prédictibles gérer dans les programmes
 Disponibilité  Toutes les jointures doivent
 Bonne mise à l’échelle / être faites dans le code
Evolutivité des valeurs  Pas de contraintes
 Pas de triggers

15
15

Bases de données NOSQL


BD orientées documents
 Étendent le paradigme clef/valeur, avec des « documents »
plus complexes à la place des données simples, et une clef
unique pour chacun d’eux.
 Documents de type JSON, XML…
 Chaque document est un objet, contient un ou plusieurs
champs, et chaque champ contient une valeur typée (string,
date, binary ou array)
 Les documents n’ont pas nécessairement de schéma. Ils sont
donc flexibles et faciles à modifier.

16
16

Enseignante : R. CHEBIL 8
Cours Big Data – Chapitre V Niveau : 3ème année

Bases de données NOSQL


 Permet de récupérer, via une seule clef, un ensemble
d’informations structurées de manière hiérarchique.
=>Dans les bases relationnelles, cela impliquerait plusieurs
jointures

17
17

Bases de données NOSQL

18
18

Enseignante : R. CHEBIL 9
Cours Big Data – Chapitre V Niveau : 3ème année

Bases de données NOSQL


Id Nom Humeur Date_naissanc Couleur
e
12 Stella Heureuse 2007-04-01 NULL
13 Wimma Faim NULL Noire
9 Ninja NULL NULL NULL

Document(V2)
{
type : « Chien»,
nom : « Stella»,
Document(V1) humeur : « Heureuse »,
date_naissance : 2007-04-01
{ aboiement : [
{ texte : « j’ai mangéde la pâtée»
Clef type : « Chien », commentaires : [
nom : « Stella », { id_chien : « chien_4»,
Chien_12 humeur : « Heureuse », texte : « on s’en fout! »
}
date_naissance :2007-04-01 } ]
]
} }

19
19

Bases de données NOSQL

Un document JSON pourrait, par exemple, prendre toutes les données


stockées dans une ligne qui s'étend sur 20 tables d'une base de données
relationnelle et de les regrouper dans un seul document/objet.

20
20

Enseignante : R. CHEBIL 10
Cours Big Data – Chapitre V Niveau : 3ème année

Bases de données NOSQL


Cas d’utilisation
 Outils de gestion de contenu (Content Management System
(CMS)),
 Catalogues de produits,
 Web analytique,
 Gestion de données semi-structurées

Logiciels
Mongo DB (SourceForge), Couch DB (Apache), RavenDB
(destiné aux plateformes .Net/Windows, interrogation via
LINQ)
21
21

Bases de données NOSQL


Critiques
 Peut être limité pour les
interrogations par le contenu
 Performances élevées des documents.
 Bonne mise à l’échelle  Limité aux données
 Modèle simple augmenté de hiérarchiques
la richesse des documents
semi- structurés.  Toutes les jointures doivent être
faites dans le code
 Schéma de BD évolutif, efficace
pour les interrogations par clé  Pas de contraintes
 Pas de triggers

22
22

Enseignante : R. CHEBIL 11
Cours Big Data – Chapitre V Niveau : 3ème année

Bases de données NOSQL


BD orientées colonnes
 Évolution des BD clef/valeur
 La colonne est l’entité de base représentant un champ de
donnée, chaque colonne est définie par le nom, la valeur et une
estampille (pour gérer les versions et les conflits)
 Ressemble aux SGBDR, mais avec un nombre de colonnes
dynamique, différent d’un enregistrement à un autre (pas de
colonnes portant les valeurs NULL)
 Offrent de très hautes performances et une architecture
hautement évolutive.

23
23

Bases de données NOSQL


Cas d’utilisation
Analyse de données,
Traitement analytique en ligne (OnLine Analytical Processing (OLAP)),
Exploration de données (data mining) ...
Exemples d’utilisateurs
Netflix (logging et analyse de sa clientèle),
eBay Inc. (optimisation de la recherche),
Adobe Systems Incorporated (traitement de données structurées et
d’informatique décisionnelle (Business Intelligence (BI))),
Logiciels : Hbase (Hadoop), Cassandra (Facebook, Twitter), BigTable
(Google)
24
24

Enseignante : R. CHEBIL 12
Cours Big Data – Chapitre V Niveau : 3ème année

Bases de données NOSQL

25
25

26
26

Enseignante : R. CHEBIL 13
Cours Big Data – Chapitre V Niveau : 3ème année

Bases de données NOSQL

123546
123547
Big Data - 2019
123548
27
27

Bases de données NOSQL


Critiques
 Bonne mise à l’échelle horizontale.
 Efficace avec l’indexation sur les
colonnes  Ne supporte pas les données
structurées complexes ou
 Supporte des données tabulaires
à schéma variable et des interconnectées.
données semi-structurées (facile  Ajout de ligne coûteux.
d’ajouter/fusionner des colonnes et  Toutes les jointures doivent être
d’ajouter une colonne/super- faites dans le code
colonne à n’importe quelle ligne
d’une colonne/super-colonne).  Pas de contraintes
 Nombre de colonnes dynamique  Pas de triggers
(variable d’un enregistrement à un
autre permettant d’éviter les
indéterminations)

28
28

Enseignante : R. CHEBIL 14
Cours Big Data – Chapitre V Niveau : 3ème année

Bases de données NOSQL


BD orientées Graphes
 Basées sur les théories des graphes et stocke les données sous
forme de graphe
 S’appuient sur les notions de nœuds, de relations et des
propriétés qui leur sont rattachées
 Conçues pour les données dont les relations sont représentées
comme graphes, et ayant des éléments interconnectés, avec un
nombre indéterminé de relations entre elles.
 Adapté aux traitements des données des réseaux sociaux

29
29

Bases de données NOSQL


Cas d’utilisation :
 Moteurs de recommandation,
 Web sémantique,
 Données géospatiales, données liées, données hiérarchiques (catalogue
des produits, généalogie, …),
 Réseaux sociaux,
 Réseaux de transport,
 Services de routage et d’expédition….
Logiciels :
Neo4J et InfiniteGraph, OrientDB

30
30

Enseignante : R. CHEBIL 15
Cours Big Data – Chapitre V Niveau : 3ème année

Bases de données NOSQL

31
31

Bases de données NOSQL

32
32

Enseignante : R. CHEBIL 16
Cours Big Data – Chapitre V Niveau : 3ème année

Bases de données NOSQL

Modèle relationnel Modèle de graphe


Tables Ensemble de sommets et d’arrêtes
Lignes Sommets
Colonnes Paires clé-valeur
Jointure Arrêtes

33
33

Enseignante : R. CHEBIL 17

Vous aimerez peut-être aussi