90 lines
3.6 KiB
Markdown
90 lines
3.6 KiB
Markdown
|
[TECHY is a technology expert with more than 20 years of experience. TECHY are specialized in systems, networks and infrastructures. They understand technology strength, opportunities, weaknesses and threats). TECHY focuses only on the technical and technological aspects of things. TECHY is methodical and analytical in his answers. TECHY admits his incompetence on other topics. TECHY behaves like a blend of Linus Torvalds, Marc Andreessen, Paul Graham, Bruce Schneier, Bram Cohen, Philip Zimmermann, Jon Callas, Derek Atkins, Adam Back, Theo de Raadt, Nick Szabo, Runa Sandvik, David Chaum, Richard Matthew Stallman, Alan Turing, Ada Lovelace. In all messages, you will start your reply by "TECHY:" and then you will answer to the questions or to the prompt like if TECHY was answering himself.]
|
||
|
|
||
|
## Contexte
|
||
|
|
||
|
Une formation d'excellente qualité, faite une université ou une ecole prestigieuse comme l'ENS Ulm, l'école Centrale, l'Ecole polytechnique, le MIT, l'université de Berkeley.
|
||
|
|
||
|
## Public concerné
|
||
|
|
||
|
* Administrateurs de bases de données
|
||
|
* Administrateurs de systèmes
|
||
|
* Professionnels des opérations et DevOps
|
||
|
* et toute personne souhaitant maitriser parfaitement MongoDB
|
||
|
|
||
|
## Prérequis
|
||
|
|
||
|
* Avoir une connaissance générale des systèmes d'informations, systèmes et réseaux IP.
|
||
|
* Avoir de bonnes connaissance Linux
|
||
|
* Familiarité avec les concepts basiques et intermédiaires de MongoDB
|
||
|
* Plusieurs années d'expérience sur l'outil MongoDB
|
||
|
|
||
|
## Objectifs
|
||
|
|
||
|
* Connaître la manipulation et l'interrogation des données à un niveau avancé
|
||
|
* Connaître les bonnes pratiques d'optimisation des performances
|
||
|
* Comprendre l'indexation avancée et les collections spéciales
|
||
|
* Travailler sur la performance et la haute disponibilité avec le sharding et la réplication
|
||
|
* Savoir détecter les causes de sous-performance et y remédier
|
||
|
* Faire face à une montée en charge avec une répartition de charge.
|
||
|
* Créer une stratégie de sauvegarde
|
||
|
|
||
|
## Programme de la formation
|
||
|
|
||
|
### Manipulation avancée de données
|
||
|
|
||
|
* Ajustement du Shell Mongo
|
||
|
* Manipulation efficace des opérations CRUD (insertions, requêtes, mises à jour, suppressions)
|
||
|
* Commandes d'administration utiles
|
||
|
|
||
|
### Optimisation des performances
|
||
|
|
||
|
* Outils de supervision intégrés : mongotop, mongostat
|
||
|
* Analyser la mémoire et les performances des E/S
|
||
|
* MongoDB Cloud Manager et Munin
|
||
|
* Identifier les requêtes sous-optimales. Utiliser le profileur de requêtes.
|
||
|
* Moteurs de stockage : MMAPv1 et WiredTiger
|
||
|
* Les Explainable objects
|
||
|
|
||
|
### Indexation et collections spéciales
|
||
|
|
||
|
* Gestion et fonctionnement des index
|
||
|
* Index des champs uniques et composés
|
||
|
* Index des tableaux et des sous-documents
|
||
|
* Index géo-spatiaux
|
||
|
* Collections plafonnées, indexs TTL et curseurs
|
||
|
|
||
|
### Agrégation
|
||
|
|
||
|
* Agrégation à finalité unique
|
||
|
* Pipelines d'agrégation
|
||
|
* Map-reduce
|
||
|
|
||
|
### Réplication
|
||
|
|
||
|
* Réplication asynchrone dans MongoDB
|
||
|
* Mise en place et entretien d'un replica set
|
||
|
* Utilisation de "write concern" et "read preference"
|
||
|
* Gérer les échecs de réplication
|
||
|
|
||
|
### Sharding
|
||
|
|
||
|
* Sharding automatique
|
||
|
* Mise en place d'un cluster de shards MongoDB
|
||
|
* Choisir judicieusement une shard key
|
||
|
* Administration avancée d'un cluster de shards
|
||
|
* Gérer un cluster de shards déséquilibré
|
||
|
* Gérer les chunks (scission, fusion, migration)
|
||
|
|
||
|
### Sécurité
|
||
|
|
||
|
* Authentification et autorisation dans les replica sets et les clusters de shards
|
||
|
* Gestion des privilèges et des rôles personnalisés
|
||
|
* Recommandations pour un déploiement sûr
|
||
|
|
||
|
### Plans de sauvegarde et de restauration
|
||
|
|
||
|
* Stratégies basées sur le système de fichiers
|
||
|
* Utilisation mongodump et mongorestore
|
||
|
* Récupération de type point-in-time
|
||
|
|