Introduction à la formation MongoDB Administration
Présentation générale et objectifs de cette formation MongoDB
Retour sur l’évolution des bases de données
Le paradigme classique des bases relationnelles
L’écosystème NoSQL : définition, notions propres et principales solutions
Présentation de MongoDB : caractéristiques, fonctionnalités, architecture et positionnement sur le marché
Structure de données, les documents et collections
Le format BSON (version binaire du JSON)
Ressources et documentation
Exemples de cas pratiques : tour de table, présentation des participants et du formateur ou de la formatrice, échanges autour des contextes professionnels, attentes et perspectives d’applications des acquis de la formation. Etudes de scénarios d’utilisation de la base de données MongoDB.
Installation et prise en main du Shell mongo
Les différentes versions et modèles de déploiement de MongoDB
Plateformes supportées, packages et scripts de lancement
Tests de connexion
Découverte du shell Mongo
Le langage de requête de MongoDB, syntaxe JavaScript
Créer une base de données, des collections et documents
Les espaces de noms (namespace)
Les APIs de développement
Exemples de cas pratiques : installation et lancement de MongoDB, premières manipulations de l’interface.
Manipulation des documents
Un point sur les formats JSON et BSON
Les différents types élémentaires et les types spéciaux
Opérations CRUD : Create, Read, Update et Delete
Importer et exporter des données
Effectuer une recherche : paramètres de la méthode find, critères de requêtes, filtres et tris…
Analyser et comprendre le contenu de ses collections avec MongoDB Compass
Opérations et pipelines d’agrégation
Exemples de cas pratiques : création et travail sur des documents, peuplement d’une base de données, requêtage et optimisations.
Réplication de données
Se protéger des pannes grâce aux Replica Sets
Le principe maître/esclave
Nœuds primaires et secondaires
Désigner un arbitre
Bascule automatique en cas d’incident
La collection oPlog
Exemples de cas pratiques : définition d’une stratégie de déploiement selon son architecture réseau, mise en œuvre d’une procédure de réplication sous MongoDB.
Sharding (fragmentation)
L’architecture et les composants du sharding sous MongoDB : shard, mongos et config servers
Créer le serveur de configuration et les shards
Distribution de la base de données
Les bonnes pratiques pour administrer un cluster
Exemples de cas pratiques : choisir une architecture et une stratégie de distribution selon les données à disposition, mise en place du sharding, couplage avec des réplicas, opérations d’administration.
Index et amélioration des performances
Comprendre la structure des index dans MongoDB : types et propriétés
Processus de création d’un index et stratégies d’indexation
Les fonctions explain() et hint()
Optimisation des requêtes
Superviser les performances : gestion de la mémoire, analyse et tuning
Intégrer des outils de supervision externes comme Nagios ou Zabbix
Outils de contrôle et indicateurs de performances
Mongotop et mongostat
Exemples de cas pratiques : création d’index, supervision des performances, utilisation de divers outils pour l’amélioration des performances.
Administration, sauvegarde et restauration
Interfaces graphiques pour l’administration
Les différentes stratégies de sauvegarde et utilitaires à connaître
Gérer la journalisation
Exemples de cas pratiques : utilisation de mongodump, mongorestore, sauvegarde d’un serveur, de clusters et manipulation d’un outil graphique pour réaliser des tâches d’administration.
Sécurité
Gestion des accès
Mécanismes d’authentification
Gérer les utilisateurs, rôles et privilèges
La collection system.users
Exemples de cas pratiques : étude de la checklist de sécurité fournie par MongoDB pour sécuriser un déploiement, mise en œuvre de l’authentification sur un cluster de shard.