Please enable JavaScript.
Coggle requires JavaScript to display documents.
Chapitre 1 :Découvrir les bases de données NoSQL ==> Définir le concept…
Chapitre 1 :Découvrir les bases de données NoSQL ==> Définir le concept de bases de données NoSQL
Definition
NoSQL(NOT ONLY SQL) est un type de base de données non relationnelle, conçu pour gérer des données volumineuses, non structurées ou semi-structurées. Il offre une grande flexibilité, une scalabilité horizontale et des performances optimisées pour des cas comme le Big Data et les applications en temps réel.
quatre types principaux de bases de données NoSQL
Bases orientées graphes :
Bases clé-valeur :
Bases orientées documents :
Bases orientées colonnes :
Inconvénients du NoSQL
Absence du concept de clé étrangère, ce qui veut dire qu’il n’y a pas de mécanisme pour vérifier la cohérence des données (il faut le faire au niveau de la programmation),
NoSQL n’est pas adaptable aux applications basées sur des transactions sécurisées et fiables (Gestion bancaire par exemple),
Les requêtes SQL et NoSQL ne sont pas compatibles
Avantages du NoSQL
Format clé-valeur : Simple à mettre en œuvre.
Stockage d'objets : Compatible avec les listes, tableaux, collections.
Open-source : Pas de coûts de licence.
Extensibilité : Ajout facile de serveurs.
Unités logiques : Organisation simplifiée des données.
Sans jointures : Accès direct aux données liées (ex : client et commande).
Des SGBD Relationnels ….. au NoSQL
.
Modèle flexible
: Pas besoin de schéma fixe, idéal pour les données non structurées.
.
Scalabilité
: Ajout facile de serveurs pour gérer plus de données.
.
Big Data
: Conçu pour traiter de très grands volumes de données.
.
Polyvalence
: Différents types de bases (documents, graphes, colonnes).
.
Tolérance aux pannes
: Haute disponibilité dans les systèmes distribués.
Caractéristiques générales des bases NoSQL
Modèle sans schéma (Schema Free) : Les données peuvent être stockées sans structure fixe, offrant une grande flexibilité.
Architecture distribuée : Les données sont réparties sur plusieurs serveurs, assurant une meilleure disponibilité et scalabilité.
Propriétés BASE :
Basically Available : Disponibilité élevée.
Soft State : Les données peuvent changer avec le temps.
Eventually Consistent : La cohérence est atteinte à terme, pas immédiatement.
Langages divers : Permet d'utiliser des langages autres que SQL, adaptés à différents besoins.
Manipulation de données complexes : Supporte les structures imbriquées comme JSON ou XML, idéal pour des données non structurées.
Gestion des volumes exponentiels : Conçu pour traiter efficacement de grandes quantités de données, comme dans les applications web ou le Big Data.
Pourquoi choisir MongoDB?
Flexible : Modèle de données sans schéma fixe, idéal pour les données non structurées.
Scalabilité horizontale : Ajout facile de serveurs pour gérer les volumes de données croissants.
Haute disponibilité : Réplication des données pour garantir l'accessibilité même en cas de panne.
Performance élevée : Optimisé pour des opérations rapides et massives de lecture/écriture.
Facilité de gestion : Administration simplifiée grâce à une architecture distribuée.
Large écosystème : Vaste communauté, outils et support pour le développement rapide.