Formation Bases de données NoSQL

Formation NativeScript with Angular 4
December 17, 2018
Initially Meet Online dating sites – Tips For a Successful Earliest Meet
April 14, 2021
Le langage SQL et les concepts de matrice (ligne, colonne) et de relation entre les données ont monopolisé la façon de représenter les données et de les manipuler pendant des décennies. Mais les sources de données, les formats, et les volumes ont évolué (Informations émises par les applications et les sites WeB, Objets Connectés, Journaux, etc.). Aussi il a bien fallu penser de nouvelles architectures et de nouveaux outils ou langages d’extraction et de stockage pour les données non structurées. Il s’agit d’une rupture conceptuelle suffisamment forte par rapport au SQL (et donc aux architectures sous-jacentes) pour que l’on souhaite la définir en montrant qu’il existe une autre voie "Not Only SQL" . La nuance est importante car il ne s’agit pas d’abandonner le SQL pour tous les projets et cette formation précisera clairement les champs d’application du NoSQL. Les bases de données NoSQL renvoient donc à des concepts et des outils spécifiques que ce soit au niveau des architectures, de l’exploitation, du stockage, de l’extraction des données, et bien sûr du développement. Cette formation vous propose dans un premier temps de bien comprendre en quoi les concepts et les savoir-faire sont différents par rapport au monde des SGBDR classiques puis de mettre en œuvre les solutions NoSQL Open Source les plus utilisées aujourd’hui comme MongoDB, Cassandra, Couchbase et le puissant outil ElasticSearch qui permet l’indexation et la recherche de données. La formation est résolument orientée vers la pratique afin de ne pas rester uniquement conceptuelle .

Des SGBD relationnels au NoSQL…

Rappels synthétiques sur la philosophique des SGBDR Gérer les relations entre les données avec de la redondance En quoi certains formats ne sont pas adaptés aux SGBDR ? Qu’entend-on par données structurées et données non-structurées ? Exemples de « nouvelles » sources de données (logs, IoT, sites Web, etc.) Évolutions technologiques et avènement du NoSQL Champs d’application des bases NoSQL et des SGBDR

Différentes familles NoSQL

Pourquoi cette classification ? Les bases de données clé/valeur Comment gérer l’intégrité des données ? Les bases de données orientées document Exemples de traitements sur des formats JSON ou XML Comment stocker des documents binaires ? Les bases orientées colonne distribuées pour le Big Data opérationnel : Hadoop, HBase, Cassandra… Modéliser un réseau avec les bases de données orientées graphe (Facebook, Twitter, etc.) L'écosystème Hadoop (différences avec les SGBDR, liens avec le NoSQL) Ateliers : Manipulation des données dans un contexte Big Data avec l’outil HBase de Hadoop Observation du format des données manipulées sur des bases en production (Cassandra, Redis, MongoDB)

Comment choisir une base NoSQL ?

Synthèse des principaux acteurs Open Source (MongoDB, Cassandra, Redis, CouchBase…) Les choix matériels Comment aborder la migration ? Les impacts sur le développement client. Comment développer efficacement avec des bases NoSQL ? Quels outils de supervision et comment les choisir ? Quelle est la complexité administrative et la courbe d'apprentissage ? Cas d'utilisation dans des entreprises existantes Et les performances ? Quelques benchmarks ? Qu'est-ce que NewSQL ? Ateliers : Création interactive d’une matrice de synthèse comparant les différents acteurs, leur contexte propice d’utilisation, leurs points forts et leurs faiblesses en fonction de différents paramètres comme les fonctionnalités, la recherche, le stockage, la souplesse dans la scalabilité, les performances, la courbe d’apprentissage, etc.

Rechercher les données (Elasticsearch)

Liens entre Elasticsearch et les bases NoSQL Intégration des données dans Elasticsearch Configuration d‘index Analyse et extraction de texte Différents modes de recherche (structurée, full-texte, proximité, etc.) Ateliers : Création d'index, Mise en place d'analyseurs Utilisation de l'API de recherche

Mise en œuvre d’une base NoSQL avec MongoDB

Installation de MongoDB Création de documents et manipulations (shell) Importation de données des SGBDR au format JSON Indexer les données Suivre les données et les index dans le temps Réplication des données Partitionner les données Fonctionnement du moteur de stockage des données Administrer et superviser au quotidien Ateliers : Installation de MongoDB Premiers pas avec le shell Création de bases et de collections Intégration de données au format JSON Stockage de journaux de supervision de réseau (Nagios) Requêtage Mise en place d’index et observation du déroulement des requêtes Mise en œuvre de la réplication de données Mise en œuvre du partitionnement de données
Ce cours alterne pratique et théorie pour une meilleure assimilation des connaissances.