PLB CONSULTANT : 05. NoSQL - MongoDB, mise en œuvre et administration
Organisme
92300 LEVALLOIS PERRETVoir toutes ses formationsAutres organismes proposant cette formation
Durée
Modalités
- Classe virtuelle
- Présentiel
À l’issue de cette session, chaque stagiaire bénéficiaire sera contacté par un prestataire choisi par l’Opco Atlas afin d’évaluer « à chaud » la qualité de la formation suivie.
Prix
Public
Chefs de projet, Administrateurs de bases de données, Architectes…
Pré-requis
Avoir des connaissances de base des architectures techniques, du management SI et des bases de données. Des connaissances du langage Python ou Java sont recommandées.
Objectifs pédagogiques
Comprendre le fonctionnement de MongoDB
Comprendre comment installer, configurer et administrer un serveur MongoDB
Créer des requêtes d'interrogation
Mettre en œuvre la réplication avec MongoDB
Distribuer des données sur plusieurs instances d'une base MongoDB
Sauvegarder les données d’une base MongoDB
Programme détaillé
Jour 1
Introduction à MongoDB
La domination historique des bases de données relationnelles
L’apparition des bases NoSQL. Les différents types de bases NoSQL
Présentation de MongoDB, son positionnement, ses avantages
La structure de données au sein de MongoDB : base de données, collections, documents…
Les formats JSON et BSON. Types de données élémentaires et spéciaux
Exemples d’utilisation de MongoDB
Installation de MongoDB
Plateformes supportées
Installations sous les différentes distributions de Linux, lancement
Installation sous Windows, configuration, création de services, lancement
Présentation des outils MongoDB
Travaux Pratiques
Installation de MongoDB, lancement du serveur, test de connexion
L’invite de commande (shell) Mongo
Présentation et lancement
Premières commandes et pages d’aide
Script d’initialisation et configuration de l’invite de commande
Bases de données, collections, documents, namespaces : gestion et règles de nommage
Les instructions CRUD : insertion, lecture, mise à jour, suppression
Travaux Pratiques
Créer et manipuler des documents via le shell
Écrire des scripts et des programmes pour MongoDB
Scripts JavaScript externes : différences avec le shell et lancement
Stocker des fonctions JavaScript sur le serveur et appeler celles-ci
Utiliser les drivers pour manipuler les données depuis des programmes externes
Travaux Pratiques
Manipuler des données via des scripts et via le driver Python
Quiz de validation des acquis de la première journée
Jour 2
L’indexation des données
Principes. Types et propriétés d’index
Couverture de requête et intersection d’index
Stratégies d’indexation et explication de requêtes
Travaux Pratiques
Mise en place d’index. Observation du déroulement des requêtes
La réplication de données
Présentation et intérêt
Noeuds maître et secondaires. Réplication des données et bascule automatique en cas d’incident
Noeuds secondaires : priorité, noeuds cachés et différés
Procédure de mise en place de la réplication
Travaux Pratiques
Mise en oeuvre de la réplication de données
Le partitionnement de données (sharding)
Présentation et intérêt
Le sharding avec MongoDB
Répartition automatique ou manuelle des données
Procédure de mise en place du sharding
Le cas GridFS : stockage de fichiers lourds
Travaux Pratiques
Mise en oeuvre du partitionnement de données
Quiz de validation des acquis de la deuxième journée
Jour 3
Les moteurs de stockage des données
Le moteur WiredTiger : concurrence, journalisation, compression, usage mémoire…
Le moteur MMAPv1 : journalisation, usage disque, usage mémoire...
Le moteur In-Memory : concurrence, usage mémoire, stratégie de déploiement…
Les moteurs de stockage tiers : RocksDB…
Travaux Pratiques
Paramétrage du moteur de stockage par serveur et par collection. Visualisation des impacts
Sécuriser son installation de MongoDB
Cheklist de sécurité
L’authentification et les différents mécanismes utilisables
Utilisateurs, rôles et privilèges
Authentification entre noeuds
Les fonctionnalités entreprise : cryptage, audit
Travaux Pratiques
Mise en oeuvre de l’authentification sur un cluster de shard
Administrer et superviser MongoDB
Importer / exporter des données (mongoexport, mongoimport)
Sauvegarder / restaurer : les différentes stratégies (mongodump, mongorestore, snapshot filesystem)
Superviser l’exécution et intégrer des outils de supervision externes (ex : Nagios)
Les outils graphiques d’administration
Gérer la journalisation
Travaux Pratiques
Importer / exporter des données. Dump de données, Superviser une base