NoSQL (par HEGUY Xabier)
Transcript of NoSQL (par HEGUY Xabier)
NoSql
(Not Only SQL)
SGBD = systme relationnel Donnes contenues dans des relations, reprsentes sous forme de tables.
Langage universel: SQL
Proprits ACID:Atomicit
Cohrence
Isolation
Durabilit
Limites des SGBD relationnels:Difficult sadapter de trs fortes montes en charge.
NoSql
Systme de gestion de bases de donnes non relationnelles.Premier objectif: la performance.Ne ncessitent pas forcment des schmas fixs et doivent viter au maximum les jointures.Systmes distribus.
Systme distribu
Systme constitu de nombreuses machines et logiciels qui interagissent travers un rseau dans un but commun.
Avantages:
Fiabilit (tolrance aux pannes)
Extensibilit
Partage des ressources
Vitesse/Performance
Inconvnients:
Logiciel
Rparation
Rseau
Scurit
Thorme CAP
Cohrence : tous les noeuds du systme voient exactement les mmes donnes au mme moment.Haute disponibilit : en cas de panne, les donnes restent accessibles sans aucun temps darrt.Tolrance au partitionnement : le systme peut tre partitionn en de multiples petits groupesSeules deux de ces trois contraintes peuvent tre respectes en mme temps
Rgles BASE
Basically Available: Le systme garantit la disponibilitSoft state: Les donnes ne sont pas forcment cohrentes.Eventual consistency: Les donnes finiront par tre cohrentes.
Cl / valeurDonnes reprsentes par un couple cl/valeur.La valeur peut tre une chane de caractres, un texte (brut, XML), une image4 commandes: Create, Read, Update et Delete.Toute lintelligence porte auparavant par les requtes SQL devra tre porte par lapplicatif qui interroge la BD.Solutions les plus connues: Redis, Riak et Voldemort cr par LinkedIn.
Orient document
Bas cl/valeurLa valeur est un documentPermet de rcuprer, via une seule cl, un ensemble dinformations structures de manire hirarchiqueSolutions les plus connues: CouchDB (Apache), RavenDB et MongoDB.
Orient colonneRessemble premire vue une table dans un SGBDRLe nombre de colonnes est dynamiqueEvite de retrouver des colonnes ayant des valeurs NULLSolutions les plus connues: Hbase et Cassandra
Orient graphe
Modle de reprsentation des donnes bas sur la thorie des graphes2 concepts:Entits
Relations entre 2 entits
Facilite la reprsentation du monde rel (adapt au traitement des donnes des rseaux sociaux)Principale solution Neo4J
Orient graphe