Introduction Bases de Données NoSQL Principe de base Avantages/Inconvénients L’évolution du Web 2.0 et actuellement Web 3.0, a montrée l’insuffisance des bases de données relationnelles en termes d’espace de stockage et de performances suite à la réponse aux différentes requêtes. Les bases de données NoSQL, qui signifie « not only SQL » sont des types de base de données qui ont commencé à émerger depuis 2009, pour répondre aux nouveaux besoins liés à l’émergence du Big Data. Le nom peut sembler comme une opposition aux bases de données SQL, sa fonction première n’étant pas de remplacer les bases de données relationnelles, mais de proposer une alternative. Mots clés : NoSQL, Bases de données relationnelles, Big Data Types de Bases de données NoSQL Clé-Valeur : Son principe est très simple, chaque valeur stockée est associée à une clé unique. Il propose une manière de stockage sans schéma « Shéma-less ». [2] La bases de données de type Clé-Valeur la plus populaire est Redis. Orientée Documents : Les clés sont associées à un document dont le format est du JSON ou du XML. La base de données NoSQL de type Orienté documents la plus rependue est MongoDB. [3] Orientée Colonnes : Le principe d’une base de données colonnes consiste à stocker par colonne et non par ligne. Il permet l’évolution et la flexibilité, car il permet l’ajout de colonnes à tout moment. Exemple : Cassandra [3] Orientée Graphes : Ce type est basé sur la théorie des graphes. Elles stockent les données sous une structure de graphes « nœuds, liens et propriétés ». Exemple : Neo4j [1] Théorème CAP : Consistency : Tous les clients du système voient les mêmes données au même instant. Availibility : Un système est dit disponible si toute requête reçue par un nœud retourne un résultat. Partition Tolerance : Un système est dit tolérant à la partition s’il continue à répondre aux requêtes de manière correcte même en cas de panne totale du système ou d’une coupure du réseau. Théorème CAP [1] Le théorème CAP énonce que seulement 2 parmi les 3 propriétés citées peuvent être gérées simultanément par un système distribué. Avantages : -Fournit plusieurs modèles à choisir -Rapide, plus efficace et flexible -Support de l’échec matériel Références : [1] Hadrien FURRER, “ SQL, NoSQL, NewSQL Stratégie de choix” [2] Adriano Girolamo PIAZZA, “NoSQL état de l’art et Benchmark” Inconvénients : -Abscence de langage de requêtes standard et uniforme -Manque de fonctionnalités -Abscence d’interface standard [3] Lionel HEINRICH, “Architecture NoSQL et réponse au Théorème CAP ”