Introduction à NoSQL - BD002

Objectifs

Connaître les caractéristiques techniques des bases de données NoSQL, les différentes solutions disponibles. Identifier les critères de choix.

Programme

Module 1 : Introduction
– Origine des bases de données, les notions de transaction, les SGBD, la standardisation SQL, l’arrivée de nouveaux besoins : volumes importants liés aux technologies et aux nouveaux usages, traitements optimisés de flux de données au fil de l’eau.
– Développement des techniques sur différents aspects : stockage, indexation/recherche, calcul.
– Définition ETL : Extract Transform Load.

Module 2 : Caractéristiques NoSQL
– Structure de données proches des utilisateurs, développeurs:
sérialisation, tables de hachage, JSON.
– Priorité au traitement du côté client.
– Protocoles d’accès aux données, interfaces depuis les langages classiques.
– Données structurées et non structurées, documents, images, Stockage réparti : réplication, sharping, gossip protocl, hachage,..
– Parallélisation des traitements : implémentation de MapReduce.
– Cohérence des données et gestion des accès concurrents : « eventual consistancy » et multi-version concurrency control.

Module 3 : Principaux acteurs
– Les solutions NoSQL et leurs choix techniques : CouchDB, MongoDB, Cassandra, Hbase (Hadoop), ElasticSearch, ..
– Démonstrations avec Cassandra et couchDB.
– Critères de choix.

Module 4 : Mise en oeuvre
– Points à vérifier : méthode d’utilisation des données format de stockage JSON, XML, choix de la clé, notion de clé composite, …
– Aspects matériels, besoins en mémoire, disques, répartition, …
– Import des données : outils et méthodes selon les moteurs NoSQL

Recherches

Tout le site Le catalogue

Liens directs