0% ont trouvé ce document utile (0 vote)
32 vues3 pages

BD Nosql

Le document présente une introduction aux bases de données NoSQL, qui se distinguent des bases relationnelles par leur flexibilité, leur scalabilité horizontale et leur optimisation pour le Big Data. Il décrit les différents types de bases NoSQL, notamment les bases clé-valeur, orientées documents, orientées colonnes et orientées graphes, ainsi que leurs cas d'usage. Enfin, il aborde les situations où il est approprié d'utiliser NoSQL et souligne que ces bases complètent les systèmes relationnels sans les remplacer.

Transféré par

emna dimassi
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)
32 vues3 pages

BD Nosql

Le document présente une introduction aux bases de données NoSQL, qui se distinguent des bases relationnelles par leur flexibilité, leur scalabilité horizontale et leur optimisation pour le Big Data. Il décrit les différents types de bases NoSQL, notamment les bases clé-valeur, orientées documents, orientées colonnes et orientées graphes, ainsi que leurs cas d'usage. Enfin, il aborde les situations où il est approprié d'utiliser NoSQL et souligne que ces bases complètent les systèmes relationnels sans les remplacer.

Transféré par

emna dimassi
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

📘 Cours : Introduction aux bases de

données NoSQL
1. Introduction
 SQL (relationnel) : organisé en tables, lignes, colonnes, avec un schéma fixe.
 NoSQL (Not Only SQL) : famille de systèmes de gestion de bases de données qui ne
reposent pas uniquement sur le modèle relationnel.
 Conçu pour répondre aux besoins du Big Data, du temps réel, de la scalabilité et de
la souplesse des données.

2. Caractéristiques des bases NoSQL


 Sans schéma rigide : flexibles, on peut ajouter de nouvelles propriétés sans redéfinir
la structure.
 Évolutives horizontalement : ajout de serveurs (scalabilité) plus facile que les SGBD
relationnels.
 Performances élevées : optimisées pour lecture/écriture rapide.
 Adaptées aux données massives (volumineuses, variées, en évolution rapide).
 Basées sur le principe BASE (Basically Available, Soft state, Eventually consistent)
contrairement à ACID (Atomicité, Cohérence, Isolation, Durabilité) des bases
relationnelles.

3. Les grands types de bases NoSQL


a) Bases clé–valeur

 Principe : chaque élément est stocké sous forme clé → valeur.


 Simples, très rapides pour rechercher une valeur à partir d’une clé.
 Exemples : Redis, Riak, Amazon DynamoDB.
 Cas d’usage : sessions utilisateurs, cache, paniers e-commerce.

b) Bases orientées documents

 Les données sont stockées sous forme de documents JSON, BSON ou XML.
 Structure flexible (chaque document peut avoir des champs différents).
 Exemples : MongoDB, CouchDB.
 Cas d’usage : applications web, gestion de contenu, réseaux sociaux.

c) Bases orientées colonnes

 Organisation par colonnes au lieu de lignes (adapté aux données analytiques


massives).
 Performantes pour l’agrégation et l’analyse.
 Exemples : Apache Cassandra, HBase.
 Cas d’usage : Big Data, IoT, statistiques en temps réel.

d) Bases orientées graphes

 Les données sont représentées sous forme de nœuds (entités) et arêtes (relations).
 Permettent de modéliser des réseaux complexes.
 Exemples : Neo4j, OrientDB.
 Cas d’usage : réseaux sociaux, moteurs de recommandation, analyse de fraude.

4. Différences SQL vs NoSQL


Critère SQL (relationnel) NoSQL (non relationnel)
Modèle de Basé sur des tables Basé sur des documents, clé-valeur,
données relationnelles colonnes, ou graphes
Fixe et structuré (doit être Flexible, souvent sans schéma
Schéma
défini à l'avance) (schema-less)
Requêtes spécifiques à chaque
Langage de SQL (Structured Query
système (ex : MongoDB query,
requête Language)
Gremlin...)
Verticale (ajouter plus de Horizontale (ajouter plus de
Scalabilité
puissance à un seul serveur) serveurs dans le réseau)
Optimisé pour les transactions Optimisé pour les grands volumes de
Performance
complexes et les relations données, haute disponibilité
Parfois limité ou partiel (BASE :
Transactions Oui (Atomicité, Cohérence,
Basically Available, Soft state,
(ACID) Isolation, Durabilité)
Eventually consistent)
MySQL, PostgreSQL, Oracle, MongoDB, Cassandra, Redis,
Exemples
SQL Server CouchDB, Neo4j
Systèmes bancaires, ERP, CRM,
Réseaux sociaux, IoT, big data,
Cas d’usage idéal applications avec relations
applications temps réel
complexes
Caractéristique SQL (Relationnel) NoSQL

5. Quand utiliser NoSQL ?


✅ Lorsque :

 Le volume de données est énorme.


 Les données sont non-structurées ou semi-structurées.
 L’application doit être hautement disponible et scalable. (besoin de performance à
grande echelle)
 Besoin de réactivité et performance en lecture/écriture.

❌ Éviter NoSQL si :

 On a besoin d’une forte cohérence stricte et de transactions complexes (banques,


ERP).
 Les données sont hautement structurées et relationnelles.

6. Exemples d’utilisation réelle


 Facebook / Twitter : stockage des posts et interactions (documents + graphes).
 Amazon / eBay : gestion des paniers et catalogues produits (clé–valeur, documents).
 Netflix : recommandations personnalisées (graphes).
 Google Bigtable : stockage massif et distribué (colonnes).

7. Conclusion
 Les bases NoSQL complètent les bases relationnelles, elles ne les remplacent pas.
 Elles sont adaptées aux nouvelles générations d’applications (web, cloud, big data).
 Le choix dépend toujours du besoin fonctionnel et technique.

Vous aimerez peut-être aussi