MongoDB pour les développeurs

Des bases (outils, language query), en passant par des concepts plus avancés (design pattern, indexation, aggregation) jusqu’à l’expertise avec la scalabilité d’une base de données MongoDB et MongoDB Cloud.

MONGODEV v1.0
3 jours (21 heures)

Description du cours

Cette formation vous permettra de comprendre et de maîtriser MongoDB pour les développeurs. Vous commencerez par les bases (outils, language query), pour continuer avec des concepts plus avancés (design pattern, indexation, aggregation) et finir sur de l’expertise avec la scalabilité d’une base de données MongoDB et MongoDB Cloud.

Objectifs pédagogiques

Ce cours permet aux participants d'acquérir les compétences suivantes:

  • Se connecter à une base de données MongoDB (local et cloud)
  • Maîtriser les commandes de base pour la gestion de sa base de données
  • Maîtriser l’insertion, la modifications, les requêtes et leurs subtilitées
  • Concevoir le data model de sa base de données (modèles, relations, arbres)
  • Comprendre et savoir utiliser l’indexation
  • Améliorer les performances de ses requêtes
  • Comprendre et utiliser le framework d’agrégation
  • Maîtriser la réplication de ses données et le sharding dans un cluster

Prérequis

Pour tirer le meilleur parti de ce cours, les participants doivent disposer des éléments suivants:

  • Connaître la syntaxe de base de l’outil Git est un plus
  • Connaître la syntaxe de base du langage javascript et la structure d’un document json est un plus

Public cible

Ce cours est destiné aux participants suivants:

  • Développeurs, consultants, chefs de projets techniques, architectes,…
  • Toute autre personne ayant besoin de comprendre en détail comment MongoDB peut s’intégrer dans une architecture logicielle.

Programme de formation

Jour 1

Crud and Data Modeling

Module 1: Les bases de MongoDB

  • NoSQL vs SQL
  • L’environnement MongoDB (stitch, atlas, compass)
  • Le champ lexical MongoDB
  • Le format BSON
  • Les commandes de base
  • Utilisation de l’IDE de MongoDB

Ateliers:

  • Importer / exporter des données en base de données
  • Analyser des données grâce à l’outils MongoDB Compass

Module 2: CRUD

  • Les différentes manières d’insérer un document
  • Les différentes manières de modifier un document
  • Les différentes manières de requêter des données

Ateliers:

  • Insérer des documents
  • Réaliser différentes requêtes
  • Modifier des données déjà existantes

Module 3: Modèles de données

  • Architecture MongoDB
  • Méthodologie pour établir un schema design
  • Les différents type de structures
  • Les différents type de relations
  • Les différents type d’arbres

Ateliers:

  • Questions ouvertes sur l’architecture
  • Établir le schema design d’une application
  • Requête sur les arbres

Jour 2

Indexation performance et agrégation

Module 4: Indexation et performance

  • Définition d’un index
  • Matérialisation d’un index dans MongoDB
  • Les différents types d’index
  • Syntaxe de création des différents types d’indexes
  • Utilisation des indexes pour les requêtes et le tri
  • Fonctionnement query planner
  • Fonctionnement de la résolution d’un requête par MongoDB
  • Covered Queries et performance à 100%

Ateliers:

  • Création d’indexes et utilisation de ceux ci
  • Réalisation d’une covered query
  • Lecture d’une explication de requête par le query planner

Module 5: Agrégation

  • Définition de l’agrégation
  • Les différents types d’agrégation
  • Le framework d’agrégation
  • Les stages d’aggrégations
  • Les opérateurs d’aggrégations
  • Optimisations des agrégations

Ateliers:

  • Réalisation d’agrégat
  • Réalisation d’une application reprenant toutes les connaissances des précédents modules

Jour 3

Réplication et sharding

Module 6: Réplication

  • Comprendre les avantages de la réplication
  • Comprendre les compromis entre vitesse et durabilité
  • Connaître les bases du fonctionnement de l’oplog
  • Comprendre ce qui se passe lors d’une panne d’un noeud

Ateliers:

  • Questions ouvertes
  • Mise en place d’un script de réplication

Module 7: Sharding

  • Comprendre la scalabilité horizontale et sa mise en place dans MongoDB
  • Comprendre comment choisir une bonne clé de sharding et son essentialité
  • Comprendre le fonctionnement du balancer
  • Connaître le rôle du serveur de configuration et son fonctionnement

Ateliers:

  • Questions ouvertes
  • Mise en place d’un script de sharding

Module 8: MongoDB dans le cloud

  • Comprendre comment Mongo Atlas fonctionne
  • Comprendre comment déployer une base de données sur Atlas
  • Comprendre la sécurité avec Atlas

Ateliers:

  • Déploiement d’un shared cluster sur Atlas

1800€ H.T.

Continuez de vous former

ECMASCRIPT
ECMAScript
ECMAScript a été créé pour standardiser JavaScript qui en est la principale implémentation. ECMAScript est le langage le plus utilisé pour écrire des scripts clients web et pour écrire des applications serveur Node.js. A l’issue de ce cours vous connaîtrez les fonctionnalités majeurs de ECMAScript qui vous permettront de réaliser des applications web ou back-end modernes, robustes et modulaires. Ce cours, mis à jour pour ECMAScript 2019, couvre ECMAScript de la version ECMAScript 2015 (ES6) à ECMAScript 2019.
GITFND
Git
Git est un logiciel de gestion de version décentralisé. Aujourd’hui Git s’est imposé comme l’outil de référence pour gérer le code source des projets informatiques, et fait ainsi partie des outils essentiels des développeurs. Ce cours est conçu pour vous enseigner la façon dont Git est utilisé réellement: il couvre tous les aspects importants de Git, ainsi que les bonnes pratiques d’utilisation au quotidien.
JSFOND
JavaScript Les fondamentaux du langage
Cette formation couvre les aspects fondamentaux du langage JavaScript. Ces bases sont indispensables pour le développement d’applications backend ou frontend en JavaScript. JavaScript est un langage léger, interprété et orienté objet, doté de fonctions de premier ordre, plus connu comme langage de script pour les pages Web, mais utilisé dans de nombreux environnements autres que les navigateurs, par exemple avec Node.js. Il s’agit d’un langage de script dynamique, multi-paradigmes, basé les prototypes, qui prend en charge les styles de programmation orientés objet, impératifs et fonctionnels.

Contactez nous

Vous pouvez vous désabonner de nos communications à tout moment.

Afin de prendre en compte votre demande, nous devons stocker et traiter vos données personnelles. Si vous nous autorisez à stocker vos données personnelles à cette fin, cochez la case ci-dessous.

En cliquant sur « Envoyer » ci-dessous, vous autorisez l’entreprise SFEIR à stocker et traiter les données personnelles soumises ci-dessus afin qu’elle vous fournisse le contenu demandé.