Un peu de culture : Bases N osql L 1



Documents pareils
NoSQL. Introduction 1/23. I NoSQL : Not Only SQL, ce n est pas du relationnel, et le contexte. I table d associations - Map - de couples (clef,valeur)

Groupe de Discussion Big Data Aperçu des technologies et applications. Stéphane MOUTON

NoSQL : hype ou innovation? Grégory Ogonowski / Recherches Octobre 2011

NoSQL. Introduction 1/30. I NoSQL : Not Only SQL, ce n est pas du relationnel, et le contexte. I table d associations - Map - de couples (clef,valeur)

Cassandra chez Chronopost pour traiter en temps réel 1,5 milliard d événements par an

Les bases de données relationnelles

AVRIL Au delà de Hadoop. Panorama des solutions NoSQL

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

Bases de Données. Stella MARC-ZWECKER. Maître de conférences Dpt. Informatique - UdS

Technologies du Web. Ludovic DENOYER - ludovic.denoyer@lip6.fr. Février 2014 UPMC

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Cartographie des solutions BigData

Information utiles. webpage : Google+ : digiusto/

NoSQL. Etat de l art et benchmark

Hibernate vs. le Cloud Computing

Le NoSQL - Cassandra

Présentation du module Base de données spatio-temporelles

BIG DATA. Veille technologique. Malek Hamouda Nina Lachia Léo Valette. Commanditaire : Thomas Milon. Encadré: Philippe Vismara

MapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril / 15

Bases de données documentaires et distribuées Cours NFE04

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

Cours Bases de données

CHAPITRE 1 ARCHITECTURE

Introduction à MapReduce/Hadoop et Spark

Bases de données documentaires et distribuées Cours NFE04

Le BigData, aussi par et pour les PMEs

Bases de données et sites WEB Licence d informatique LI345

Les technologies du Big Data

Les participants repartiront de cette formation en ayant une vision claire de la stratégie et de l éventuelle mise en œuvre d un Big Data.

OpenPaaS Le réseau social d'entreprise

L écosystème Hadoop Nicolas Thiébaud Tuesday, July 2, 13

Notes de cours : bases de données distribuées et repliquées

Quels choix de base de données pour vos projets Big Data?

SQL Historique

Document réalisé par Khadidjatou BAMBA

CATALOGUE FORMATIONS DOMAINE Bases de données

Big Data. Cyril Amsellem Consultant avant-vente. 16 juin Talend

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2

Bases de données documentaires et distribuées Cours NFE04

NoSQL - Systèmes de gestion de données distribués

Le langage SQL (première partie) c Olivier Caron

Ecole des Hautes Etudes Commerciales HEC Alger. par Amina GACEM. Module Informatique 1ière Année Master Sciences Commerciales

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie

20 ans du Master SIAD de Toulouse - BigData par l exemple - Julien DULOUT - 22 mars ans du SIAD -"Big Data par l'exemple" -Julien DULOUT

Langage SQL (1) 4 septembre IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

Hadoop, les clés du succès

Le langage SQL pour Oracle - partie 1 : SQL comme LDD

PHP 4 PARTIE : BASE DE DONNEES

Introduction à. Oracle Application Express

Bases de Données NoSQL

Cours Base de données relationnelles. M. Boughanem, IUP STRI

Fouillez facilement dans votre système Big Data. Olivier TAVARD

ORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010

Implémentation des SGBD

Module BD et sites WEB

Performances. Gestion des serveurs (2/2) Clustering. Grid Computing

CESI Bases de données

Présentation du PL/SQL

BD réparties. Bases de Données Réparties. SGBD réparti. Paramètres à considérer

Module BDR Master d Informatique (SAR)

Bases de données Cours 1 : Généralités sur les bases de données

CNAM Déploiement d une application avec EC2 ( Cloud Amazon ) Auteur : Thierry Kauffmann Paris, Décembre 2010

Cours 8 Not Only SQL

Bases de Données relationnelles et leurs systèmes de Gestion

11/01/2014. Le Big Data Mining enjeux et approches techniques. Plan. Introduction. Introduction. Quelques exemples d applications

Acquisition des données - Big Data. Dario VEGA Senior Sales Consultant

Les bases de données Page 1 / 8

L AVENIR DU NoSQL. Quel avenir pour le NoSQL?

1/ Présentation de SQL Server :

Java et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour

Compte Rendu d intégration d application

4. SERVICES WEB REST 46

Prototypage et évaluation de performances d un service de traçabilité avec une architecture distribuée basée sur Hadoop

Introduction aux bases de données

Programmation parallèle et distribuée

Master I Génie Logiciel

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel.

Introduction aux SGBDR

Big data et données géospatiales : Enjeux et défis pour la géomatique. Thierry Badard, PhD, ing. jr Centre de Recherche en Géomatique

Introduction aux Bases de Données Relationnelles Conclusion - 1

MySQL. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada

Bases de données avancées Introduction

Programmation parallèle et distribuée

Bases de données relationnelles

La problématique de la Préservation des Bases de Données. Olivier ROUCHON CINES Groupe PIN Jeudi 7 Octobre

Bases de données cours 1

Architectures haute disponibilité avec MySQL. Olivier Olivier DASINI DASINI - -

Les bases de données

Modélisation et Gestion des bases de données avec mysql workbench

Apache, MariaDB & PHP pour un développement libre. Christophe

MapReduce. Nicolas Dugué M2 MIAGE Systèmes d information répartis

Création et Gestion des tables

Ricco Rakotomalala R.R. Université Lyon 2

Java et les bases de données

Labs Hadoop Février 2013

Réplication E-maj Foreign Data Wrapper PostGIS PostgreSQL-f

Bases de données et sites WEB

Transcription:

Un peu de culture : Bases NoSQL 1

Introduction Les bases de données NoSQL (no-sql ou Not Only SQL) sont un sujet tres à la mode en ce moment. Il y a une centaine de version de bases NOSQL But du cours : présenter les éléments communs de ces bases de données et voir les capacités et possibilités de ces bases par rapport aux bases SQL. of SQL databases. 2

Web 2.0 Architecture Attirer des consommateurs éparses - Service utile - Mobilité - Social et connection Monétiser sur l individuel - Upsell service - VIP - Rapide - Possibilités supplémentai res Online Business Application Monétiser le social: - Révéler l expérience utilisateur individuelle - Revendre de données agrégrés(e.g., publicitaires)

Social Network: Business Problem 100s de millions d utilisateurs 10s million d utilisateurs concurrents Terabytes à petabytes de données Données structurées ou pas Nécessite éventuellement de la consistance de données entre utilisateurs E.g. voir les MAJ des vos amis sur votre profil

Solution Partition des données utilisateurs sur des dizinaes d ordis Propager les MAJ d une BD sur Propager les MAJ d une BD sur d autres BD dispos utilisant des Service de Message dispo et asynchrone

Plan SQL Le standard Caratéristiques Quelquesexemples NoSQL NoSQL- Definition Caratéristiquesgénérales Types de bases NOSQL Quelquesexemples 6

Standard SQL Le standard ISO/IEC 9075 en quelques dates 1987 ISO/IEC Standard 1989 Intégrité rérérentiel 1992 SQL2 1995 SQL/CLI (ODBC) 1996 SQL/PSM Extension de langage procédural 1999 Types définis par les utilisateurs 2003 SQL/XML 2008 Extensions et corrections 2011 (or 2012) Versionnageet application des tables de time periods 7

Caracteristiques SQL Des données stockées en colonnes et en tables Des relations représentées par des données DML DDL Transactions Abstraction du niveau physique 8

Aspect physique des bases SQL Applications qui spécifique quoi mais pas comment Moteur d optimisation de requetes La couche physique peut etre modifiée Création d index pour le support des requetes Dans la mémoire de la BDD 9

Data Manipulation Language (DML) Donnéesmanipuléespar Select, Insert, Update, & Delete Select T1.Column1, T2.Column2 From Table1, Table2 Where T1.Column1 = T2.Column1 Aggregation Etats composés Fonctions et Procedures Protocole de transaction explicite 10

Data Definition Language Schéma défini dès le départ Create Table (Column1 Datatype1, Column2 Datatype2, ) Contraintesdéfiniespour renforcerles liens entre données Clé primaire Clé étrangère Etc. Triggers poour Insert, Update, & Delete Modules stockés Alter Drop Controle d accès et sécurité 11

Transactions Propriétés ACID Atomicité Toutesles tachesdansdes transactions completes (commit) ou aucune tache si pas complete Consistance Unetransaction transformeunebd d un état consistant vers un autre. La consistance estdéfinien termede contraintes. Isolatation Le résultat de changement lors d une transaction n est pas visible avant qu un commit est eu lieu. Durabilité Le résultatdes transactions commitées survit aux pannes 12

BDD SQL Quelques Exemples Commerciales IBM DB2 Oracle RDMS Microsoft SQL Server Sybase SQL Anywhere Open Source (avec des options commerciales) MySQL Ingres La majeure partie des acteurs du marché utilisent des bases SQL! 13

NoSQL -Definition From www.nosql-database.org: Next Generation Databases mostly addressing some of the points: being non-relational, distributed,open-sourceand horizontal scalable. The original intention has been modern web-scale databases. The movement began early 2009 and is growing rapidly. Often more characteristics apply as: schema-free, easy replication support, simple API, eventually consistent/ BASE(not ACID), a huge data amount, and more. 14

NoSQL -Definition From www.nosql-database.org: La nouvelle génération de BD ont pour propriétés communes la plupartdu temps : d etrenon relationnelle, distribuée, open source and scalable horizontalement. L intentionoriginaleétaitde servircommebase pour les systèmes modernes de données scalables sur le web. Le mouvement démarra au début 2009 et grandit rapidement. Le plus souventles caractéristiquessontle suivantes: pas de schéma, support facile de la réplication, API simple, éventuellementconsistent / BASE (pas ACID), beaucoup de données et bien plus 15

Projects NoSQL http://www.nosql-database.org/lists 122 NoSQL Databases Cassandra CouchDB Hadoop& Hbase MongoDB StupidDB Etc. 16

Caractéristiques NOSQL Gros volume de données Google s big data Replication scalable et distribution Des 100 ainesde machines Distribuées partout dans le monde Des requetes qui obtiennent rapidement une réponse Beaucoup de requetes, peu de MAJ Asynchronicité des insertions et Updates Pas oupeude schéma ACID non respectés la plupart du temps Theoreme CAP Open source 17

Transactions BASE Acronyme à l opposé de ACID Basically Available, Soft state, Eventually Consistent Caractéristiques Consistance pauvre OK Disponibilité en premier Meilleur effort Réponse approximative Aggressif(optimiste) Simple et rapide 18

Theoreme CAP Un systemedistribuéne peutavoirqu unede ses deux caractéristiques Consistence Disponibilité Toléranceà la partition de données 19

Consistance Tous les noeuds voient la meme donnée au meme moment Wikipedia Les clients pervoivent un ensemble d opérations comme si elles étaient faites en une seule Plus comme la propriété Atomic d ACID 20

Disponibilité Les erreurs de certains noeuds ne doivent pas empecher les autres de perdurer - Wikipédia Chaque opération doit fournir une réponse 21

Tolérance au partitionnement Le systeme continue de fonctionner meme en cas de perte de message Wikipedia Les operations seront terminées, meme si certains éléments sont incomplets Pritchett 22

Types de bases NoSQL En gros, Column Store Chaquebloc de stockage provient d une seule et meme colonne Document Store Stockedes documents consistués d éléments marqués Key-Value Store Table de hachagede clés 23

Modèle de données Data Model Exemple Simple Key-Value Pairs Memcache, Redis, Dynamo, Voldermort, LevelDB, Azure Caching Wide Sparse Column Sets HyperTable, Big Table, Cassandra, HBASE, Hyperbase, Amazon DynamoDB, Windows Azure Tables, SQL Server/Azure Sparse columns BLOBs Amazon S3, Oracle Berkeley NoSQL, Windows Azure Blob Store, SQL Server RBS/FileTable JSON Documents Graph Objects and XML Documents Extended Relational MongoDB, CouchBase, Riak, RavenDB Neo4J, GraphDB, HypergraphDB, Stig, Intellidimension Versant, OracleBerkeley NoSQL, MarkLogic, existdb, EMC HiveDB, SQL Server/Azure, Oracle, IBM DB2 Oracle, EMC SQLFire, IBM DB2, MySQL, Postgres, SQL Server/Azure

NoSQL Exemple: Stockage Column Chaque bloc de stockage contient des données d une seule et unique colonne Exemple: Hadoop/Hbase http://hadoop.apache.org/ Yahoo, Facebook Exemple: Ingres VectorWise Stockage Column Store intégré dans une BDD SQLhttp://www.ingres.com/products/vectorwise 25

Column Store Comments Plus efficace que les lignes ou les docments c est stocké si : De nombreux documents/lignes/enregistrements sont insérés au meme moment donc les mises à jour sur des blocs de colonnes peuvent etre agregees. Accès uniquement à des documents dans une ligne/un doc/un enregistrement 26

NoSQLExemple: StockageDocument Exemple: CouchDB http://couchdb.apache.org/ BBC Exemple: MongoDB http://www.mongodb.org/ Foursquare, Shutterfly JSON JavaScript Object Notation 27

CouchDB JSON Exemple { "_id": "guid goes here", "_rev": "314159", "type": "abstract", "author": "Keith W. Hare" "title": "SQL Standard and NoSQL Databases", } "body": "NoSQL databases (either no-sql or Not Only SQL) are currently a hot topic in some parts of computing.", "creation_timestamp": "2011/05/10 13:30:00 +0004" 28

CouchDB JSON Tags "_id" GUID Global Unique Identifier Passé à ougénérépar CouchDB "_rev" Revision number Mécanisme de versionning "type", "author", "title", etc. Des tags arbitraires Moinsde schémas Peuventetrevalidéesa posteriori par des routines de programmeurs 29

NoSQLExemples: StockageKey-Value Hah tables de clés Les valeurs tockées avec les clés Un accès rapide aux petites données en valeurs Exemple Project-Voldemort http://www.project-voldemort.com/ Linkedin Exemple MemCacheDB http://memcachedb.org/ Le stockagedu dessousestla base Berkeley-DB 30

Map Reduce Technique pour rechercher et interroger des gros volumes de données 2 Phases, Map & Reduce Map Extraire des ensembles de paires des données sous jacentes Travail fait potentiellement en parallele sur plusieurs machines Reduce Fusionneet trieles paires Les résultats peuvent etre utiles à d autres requetes 31

Map Reduce Les techniques Map Reduce dépendent du produit Implementée par des développeurs, pas par des logiciels au dessus 32

Stocker et modifier des données La syntaxe varie HTML Java Script Etc. Asynchrone - insertion et mise à jour n attendent pas les confirmations Versionning Concurrence optimisée 33

Récupération de données La syntaxevarie Il n ya pas de langageattitré Des langages de programmation procéduraux commejava et C L applicationspécifiedes cheminsde recherche Pas d optimisation de requetes Uneréponserapideestcequi importe Il n ya pas qu uneseuleréponsevalable 34

Open Source Un cout de prime abord moindre Un large éventail de distribution possible en fonction du hardware 35

NoSQL résumé Les bases de données NOSQL rejettent Le trop plein de transactions ACID La Complexité de SQL Le design de schématropen amont Les expression de langages déclaratives La technologie d hier Le programmeur est responsable de : Langage procédure pas a pas Chemin d accès de navigation 36

En résumé Bases de données SQL Schémas prédéfinis Définition standard et interface langagiere Consistance strict Une sémantique bien définie NoSQL Pas de schémas prédéfinis Définition au produit, un langage d interface Obtenir une réponse rapidement plutot que correcte 37

38