Module 1 — Fondamentaux des bases de données et écosystème SQL / NoSQL
- Rôle d’une base de données dans un système d’information et dans une architecture applicative.
- Différences entre données structurées, semi-structurées et non structurées.
- Principes des SGBD relationnels et des bases NoSQL.
- Panorama des grandes familles NoSQL : clé-valeur, documents, colonnes, graphes.
- Vocabulaire essentiel : table, collection, schéma, enregistrement, index, requête, transaction.
- Identification des principaux cas d’usage selon les contextes métiers et techniques.
Module 2 — Modéliser et structurer les données
- Recueil et traduction des besoins en objets, attributs, relations et règles de gestion.
- Construction d’un modèle de données logique et physique.
- Principes de normalisation et intérêt pour la qualité des données.
- Gestion des clés primaires, clés étrangères et contraintes d’intégrité.
- Approche de la dénormalisation dans certains contextes de performance ou de flexibilité.
- Mise en application encadrée sur la structuration d’un modèle de données simple.
Module 3 — Prise en main du SQL et interrogation des données
- Syntaxe de base des requêtes SQL : sélection, filtrage, tri et limitation de résultats.
- Utilisation des clauses WHERE, ORDER BY, GROUP BY et HAVING.
- Réalisation de jointures pour croiser plusieurs tables.
- Calculs, agrégations et exploitation des fonctions courantes.
- Lecture critique des résultats pour vérifier la cohérence des requêtes.
- Mise en application encadrée sur des requêtes d’exploration et d’analyse.
Module 4 — Manipuler, mettre à jour et fiabiliser les données
- Insertion, modification et suppression de données avec contrôle des impacts.
- Utilisation des transactions pour sécuriser les opérations.
- Gestion des contraintes, des doublons et des erreurs de saisie.
- Bonnes pratiques pour maintenir la cohérence et la qualité des données.
- Principes de validation, historisation et traçabilité des modifications.
- Sensibilisation aux effets de bord lors des mises à jour massives..
Module 5 — Concevoir et exploiter une base NoSQL
- Logiques de modélisation orientées documents, paires clé-valeur ou graphes.
- Différences de conception entre schéma rigide et schéma souple.
- Organisation des données selon les usages de lecture, d’écriture et de montée en charge.
- Interrogation et manipulation des données dans un environnement NoSQL.
- Avantages, limites et points de vigilance selon les besoins métiers.
- Mise en application encadrée sur un exemple de structure documentaire ou distribuée..
Module 6 — Performance, indexation et optimisation des accès
- Rôle des index dans les performances de lecture et de recherche.
- Choix des index selon les types de requêtes et les volumes traités.
- Identification des requêtes coûteuses et des causes de lenteur.
- Principes d’optimisation SQL : structure des requêtes, jointures, filtres, agrégations.
- Notions de cache, partitionnement, réplication et distribution selon les contextes.
- Lecture d’indicateurs techniques simples pour orienter les optimisations.
Module 7 — Administration courante, sécurité et sauvegarde
- Gestion des utilisateurs, des rôles et des droits d’accès.
- Protection des données sensibles et application du principe du moindre privilège.
- Sauvegarde, restauration et continuité d’exploitation.
- Surveillance des journaux, de l’activité et des incidents courants.
- Vérification de l’intégrité et de la disponibilité des données.
- Bonnes pratiques d’exploitation dans un environnement de production.
Module 8 — Choisir l’architecture adaptée et intégrer la base de données au projet
- Critères de choix entre SQL et NoSQL selon les besoins de cohérence, de souplesse et de scalabilité.
- Articulation entre base de données, application, API et outils de traitement.
- Prise en compte des usages analytiques, transactionnels et temps réel.
- Anticipation des enjeux de volumétrie, de disponibilité et d’évolution.
- Méthodes pour documenter les choix techniques et faciliter la collaboration interéquipes.
- Mise en application encadrée sur l’analyse comparative de plusieurs scénarios d’architecture.






