Public visé
Architectes de BDD, administrateurs de BDD, concepteurs de BDD, développeurs.
Prérequis
Avoir des connaissances générales de bases de données et des architectures Web et des connaissances du langage Java.
Objectifs pédagogiques
A l’issue de cette formation, vous serez capable de :
- Découvrir MongoDB, la plateforme data MongoDB Atlas, et les concepts associés
- Ecrire des applications Java utilisant MongoDB
- Concevoir et optimiser vos flux de données avec MongoDB Atlas
Programme
Jour 1 - Matin
Introduction
- Bases de données relationnelles vs NoSQL
- Des charges transactionnelles aux charges analytiques : naissance des systèmes translytiques
- SGBD modernes et plateformes de données
- Études de cas et exemples de plateformes translytiques
Modèle de déploiement de MongoDB
- Standalone
- Replica Set
- Sharded
Jour 1 - Après-midi
Présentation de MongoDB
- Stockage de données structurées et non-structurées
- MongoDB, un SGBD à base de documents
- Notions de document et collections
- Limites et restrictions sur les documents
- Introduction aux formats JSON et BSON
- Les arrays
- Schémas flexibles et dynamiques
- Langage de requêtes riche
- Transactions ACID multi-documents
- Haute performance
- Haute disponibilité
- Scalabilité
- MongoDB Community Edition vs Enterprise Edition
Jour 2 - Matin
Gestion de MongoDB
- Version auto-gérée (self-managed)
- Version Database As A Service (DBaaS) via Atlas
- Comparatif auto-gérée vs DBaaS
MongoDB Atlas
- Rappels sur les offres Cloud
- Support de AWS, GCP, et Azure
- Tiers disponibles et leur configuration
Jour 2 - Après-midi
Requêtage de documents
- Structure d’une requête MongoDB
- Exemples de requêtes simples
- Les opérateurs conditionnels
- Opérateurs logiques
- Expressions régulières
- Requêter des arrays et des documents imbriqués
- Contrôle des résultats de requêtes avec le limiting, le skipping, et le sorting
Jour 3 - Matin
Opérations avancées sur les documents
- Insertion de multiples documents
- Insertion de clés doublonnées
- Insertion dans _ID
- Suppression avec DELETEONE(), DELETEMANY(), FINDONEANDDELETE()
- Remplacement de documents
- Upserts avec REPLACE
- Remplacement avec FINDONEANDREPLACE()
- Le replace vs delete et reinsert
- Modifier des champs
- Mise à jour de documents
- Les opérateurs d’update
Jour 3 - Après-midi
Introduction aux pipelines d’agrégation
- Rappels sur la notion de pipeline
- Les pipelines d’agrégation dans MongoDB
- Les opérateurs $split, $arrayElemAt, $concat, $push, $sort, $each
Modalités d’évaluation des acquis
- En cours de formation, par des études de cas ou des travaux pratiques
- Et, en fin de formation, par un questionnaire d’auto-évaluation