Académique Documents
Professionnel Documents
Culture Documents
Big Data
Chapitre 3 – Bases de Données NOSQL
Bases de Données NOSQL 2
Principaux atouts
o Évolutivité
o Disponibilité
o Tolérance aux
fautes
Caractéristiques
o Modèle de
données sans
schéma
o Architecture
distribuée
o Utilisation de
langages et
interfaces qui ne
sont pas
NOSQL et Big Data 4
Valeur
Clef
Nom_$#_Stella~~Humeur_
Chien_12 $#_Heureuse~~Date_naissance_
$#_2007-04-01…
Types de Bases de Données NOSQL 8
2. Orientée Documents (Document Database)
É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 ou XML
Chaque document est un objet, contient un ou plusieurs champs, et chaque champs contient
une valeur typée (string, date, binary ou array)
Permettent de stocker, extraire et gérer les informations orientées documents (données semi-
structurées)
Avantage : pouvoir récupérer, via une seule clef, un ensemble d’informations structurées de
manière hiérarchique
o Dans les bases relationnelles, cela impliquerait plusieurs jointures
Exemples : Mongo DB (SourceForge), Couch DB (Apache), RavenDB (destiné aux
plateformes .Net/Windows, interrogation via LINQ)
Types de Bases de Données NOSQL 9
2. Orientée Documents (Document Database)
Document (V2)
{
type : « Chien »,
nom : « Stella »,
Document (V1) humeur : « Heureuse »,
date_naissance : 2007-04-01
{ aboiement : [
{ texte : « j’ai mangé de la
Clef type : « Chien », pâtée »
nom : « Stella », commentaires : [
Chien_12
humeur : « Heureuse », { id_chien : « chien_4 »,
} texte : « on s’en fout! »
date_naissance : 2007-04-01 }
] ]
} }
Types de Bases de Données NOSQL 10
3. Orientées Colonnes (Column Store)
Évolution de la BD clef/valeur
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
Exemples: Hbase (Hadoop), Cassandra (Facebook, Twitter), BigTable (Google)
A B C D E
1 A Foo B Bar C Hello
1 Foo Bar Hello
2 B Tom
2 Tom C Java D Scala E Cobol
3
3 Java Scala Cobol
Types de Bases de Données NOSQL 11
3. Orientées Colonnes (Column Store)
Requête: clef/famille:titre[/
time]
Colonnes
Exp: "chien_12"/"Chien":"Nom" Stella
Famille Titre
Chien Date_naissance Temps
15 Valeur
Chien Humeur 11 2007-04-01
Chien Humeur 45 En Colère
Clef
Chien Nom 25
Heureuse
Chien_12 Chien Couleur 34
Stella
Noire
Aboiement Text 11
Types de Bases de Données NOSQL 12
3. Orientées Colonnes (Column Store)
Chien_4
commente
Chien Commentaire
_83
Clef/Valeur Variable