Vous êtes sur la page 1sur 16

Base de donnees NoSql: Modèle orienté colonne

BODJRENOU Fabrice
HOUETO Kévin
TCHATTI Pascal

22 janvier 2024

BODJRENOU Fabrice HOUETO Kévin TCHATTI Pascal Base de donnees NoSql: Modèle orienté colonne
Introduction

Une base de données orientée colonnes est un système de gestion


de base de données (SGBD) qui stocke les tableaux de données par
colonne et non par ligne. Elle appartient à la catégorie des bases de
données non relationnelles c’est-à-dire une base de données
NoSQL. Cette base de données NoSQL est celle qui se rapproche le
plus des bases de données classiques (SGBDR). Dans la suite, nous
allons pouvoir bien décrire ce type de base de données NoSQL,
expliquer ce le différencie des (SGBDR), présenter les avantages et
faiblesses de cette base, son principe de fonctionnement et les
outils dans lesquels cette base de données a été implémentée.

BODJRENOU Fabrice HOUETO Kévin TCHATTI Pascal Base de donnees NoSql: Modèle orienté colonne
Modèles de stockage

Les principaux modèles de stockage de données sont :


Stockage par lignes (row-oriented)
Stockage par colonnes (column-oriented)
Stockage orienté documents (document-oriented)
Stockage orienté clé-valeur (key-value)
Stockage orienté graphe (graph-oriented)
Le choix d’un modèle dépend des types de données et requêtes à
gérer de façon optimale.

BODJRENOU Fabrice HOUETO Kévin TCHATTI Pascal Base de donnees NoSql: Modèle orienté colonne
Motivation
Le modèle de stockage par colonnes est particulièrement adapté
pour optimiser le traitement analytique de grands volumes de
données, que ce soit en contexte d’entrepôt de données ou de
gestion de flux massifs issus de capteurs.

BODJRENOU Fabrice HOUETO Kévin TCHATTI Pascal Base de donnees NoSql: Modèle orienté colonne
Description du modèle de stockage par colonnes

Une base de données NoSQL orientée colonnes est un type de base


de données qui stocke les données sous forme de colonnes plutôt
que de lignes.

BODJRENOU Fabrice HOUETO Kévin TCHATTI Pascal Base de donnees NoSql: Modèle orienté colonne
Contrairement aux bases de données relationnelles, les colonnes
dans une base de données orientée colonnes sont dynamiques, ce
qui signifie que chaque ligne peut avoir un nombre différent de
colonnes et que les valeurs nulles ne sont pas stockées.

BODJRENOU Fabrice HOUETO Kévin TCHATTI Pascal Base de donnees NoSql: Modèle orienté colonne
Avantages

Récupération Rapide
Les requêtes des données sont plus rapides en raison du
stockage optimisé en colonnes.
Compression de données
Les données peuvent être plus efficacement
compressées,réduisant l’espace de stockage et améliorant les
performances.
Adaptabilité
Le modèle orienté colonne peut s’adapter au besoin changeant
des structures de données, offrant une flexibilité dans la
gestion des informations.
Optimisation Analytique
Le modèle orienté colonne s’avère particulièrement adapté
pour les charges de travail analytiques et les agrégations de
données complexes.

BODJRENOU Fabrice HOUETO Kévin TCHATTI Pascal Base de donnees NoSql: Modèle orienté colonne
Avantages

Historisation des données Elle se fait à la valeur et non pas à


la ligne comme dans les SGBDR cela empêche le stockage
d’informations en doublon et de ce fait allège
considérablement la base de données et les temps de calcul.

BODJRENOU Fabrice HOUETO Kévin TCHATTI Pascal Base de donnees NoSql: Modèle orienté colonne
Exemple

On constate que les valeurs ‘Black et George’ sont stockées deux


fois côté SGBDR vs 1 fois côté NoSQL orienté colonne.

BODJRENOU Fabrice HOUETO Kévin TCHATTI Pascal Base de donnees NoSql: Modèle orienté colonne
Exemples d’applications

Le suivi de colis (de nombreux évènements dont le statut


change : En préparation, en cours de livraison, livré. . . )
La récupération et l’analyse de données en temps réel issues
de capteurs, IOT etc. . .

BODJRENOU Fabrice HOUETO Kévin TCHATTI Pascal Base de donnees NoSql: Modèle orienté colonne
Principes de fonctionnement

Distribution des données :


les données sont horizontalement découpées et réparties sur
plusieurs nœuds pour passer à l’échelle quasiment à l’infini.
Distribution des données :
Les données sont horizontalement découpées et réparties sur
plusieurs nœuds pour passer à l’échelle quasiment à l’infini.
Réplication :
chaque segment de données est répliqué (en général 3 fois)
sur des nœuds différents pour garantir la haute disponibilité.
Consensus :
un protocole de consensus (zookeeper, paxos...) coordonne les
nœuds pour maintenir la cohérence des répliques.

BODJRENOU Fabrice HOUETO Kévin TCHATTI Pascal Base de donnees NoSql: Modèle orienté colonne
Principes de fonctionnement

Indexation columnar :
chaque colonne est indexée pour permettre de très bonnes
performances sur de gros volumes de données.
Clé de partitionnement :
les données sont partitionnées et distribuées sur les nœuds
grâce à une clé de partition (équivalent à une jointure sur une
BDR ).
Ecritures asynchrones :
les écritures sont traitées de manière asynchrone sans verrou
pour un débit très élevé.

BODJRENOU Fabrice HOUETO Kévin TCHATTI Pascal Base de donnees NoSql: Modèle orienté colonne
Comparaison avec d’autres modèles de base de données
NoSQL

Modèle orienté colonne Modèles clé- Documents


valeur
Stockage efficace pour
les requêtes analytiques Flexibilité élevée Structure de don-
pour la structure nées riche
des données
Indexation optimale pour
des requêtes sélectives Rapidité dans l’ac- Meilleure adéqua-
cès aux données tion pour des mo-
spécifiques dèles de données
complexes

BODJRENOU Fabrice HOUETO Kévin TCHATTI Pascal Base de donnees NoSql: Modèle orienté colonne
Outils d’implémentation
MongoDB :
Système de gestion de base de données NoSQL orienté
document avec son propre langage de requêtes (MongoDB).
Permet d’interagir avec MongoDB via des drivers pour
différents langages (Node.js, Java, Python, etc).
Cassandra :
Base de données NoSQL orientée colonnes avec l’interface de
programmation CQL. Des drivers sont disponibles pour Java,
Python, Node.js etc.
Neo4j :
Gestionnaire de base de données orienté graphe. Fournit son
propre langage de requête Cypher et des APIs pour Java et
.NET.
Redis :
Base de données clé-valeur avec un grand nombre de
fonctionnalités comme la gestion de file d’attente, ensembles,
etc. Interaction via protocol TCP/IP.
BODJRENOU Fabrice HOUETO Kévin TCHATTI Pascal Base de donnees NoSql: Modèle orienté colonne
Outils d’implémentation

ElasticSearch :
Moteur de recherche et d’analyse basé sur Lucene. Stocke et
interroge des documents JSON de manière très performante.
SparkSQL :
Extension de Spark permettant d’analyser et transformer des
données stockées dans des sources NoSQL comme Cassandra.
Hibernate OGM :
Extension d’Hibernate pour persister des objets Java dans des
sources NoSQL comme MongoDB.
Spring Data :
Framework fournissant une abstraction et des APIs communes
pour accéder à différentes sources de données dont certaines
NoSQL.

BODJRENOU Fabrice HOUETO Kévin TCHATTI Pascal Base de donnees NoSql: Modèle orienté colonne
Conclusion

Le modèle orienté colonne offre des avantages significatifs pour le


stockage et le traitement de grands ensembles de données. Il est
crucial de bien comprendre son principe de fonctionnement et les
outils pour exploiter au mieux ses avantages dans les applications
réelles. Son non adaptabilité aux données inter-connectées et non
structurées reste une de ses limites les plus prisées.

BODJRENOU Fabrice HOUETO Kévin TCHATTI Pascal Base de donnees NoSql: Modèle orienté colonne

Vous aimerez peut-être aussi