École Privée d’Ingénierie du Niger — L’école du nouveau monde

✉ elearning@epiniger.edu.ne    🌐 epiniger.edu.ne

Écrit par

dans

Master Professionnel en Informatique, option Génie Logiciel (MGL) › Master 1 › Master GL · S1 · UE4 — Bases de données avancées

Bases de données avancées

Code BDA4141 6 crédits CM 20h · TD 20h · TP 20h · TPE 60h Évaluation : CC + ET

👤 MOUSSA HABIBOULAYE — Doctorant en Informatique

Se connecter pour s'inscrire Créer un compte

4 leçon(s) · 1 quiz · 0 inscrit(s)

Présentation

Ce cours de spécialité approfondit la conception, la programmation et l’exploitation des systèmes de gestion de bases de données (SGBD) relationnels et non relationnels. Au-delà du SQL de base vu en licence, il prépare l’ingénieur logiciel à concevoir des schémas robustes, à programmer la logique métier côté serveur, à garantir la cohérence des données sous forte concurrence (paiements mobile money, inscriptions en ligne, guichets bancaires) et à optimiser des bases de plusieurs millions de lignes. Les exemples s’appuient sur des systèmes réalistes au Niger : gestion scolaire d’un établissement de Niamey, plateforme de paiement mobile, e-gouvernement. Les travaux pratiques utilisent PostgreSQL (logiciel libre), les notions étant transposables à Oracle, SQL Server ou MySQL.

Objectifs d’apprentissage

  • Analyser un schéma relationnel à l’aide des dépendances fonctionnelles et le normaliser jusqu’à la FNBC en justifiant les compromis.
  • Écrire des requêtes SQL avancées : jointures externes, sous-requêtes corrélées, CTE récursives, fonctions de fenêtrage.
  • Programmer la logique côté serveur : fonctions et procédures stockées PL/pgSQL, déclencheurs, vues et gestion des droits.
  • Expliquer et maîtriser les transactions (ACID), les niveaux d’isolation, le verrouillage, le MVCC et la reprise après panne.
  • Estimer le coût d’une requête, choisir des index pertinents et interpréter un plan d’exécution (EXPLAIN).
  • Situer les bases réparties et NoSQL (théorème CAP, réplication, partitionnement) et choisir une technologie adaptée à un besoin.

Prérequis

Modèle entité-association et modèle relationnel (Merise ou UML), algèbre relationnelle, SQL de base (SELECT, jointures, GROUP BY), notions de programmation procédurale et de systèmes d’exploitation.

Plan du cours

  1. Leçon 1 — Conception relationnelle avancée : dépendances fonctionnelles, normalisation et SQL analytique
  2. Leçon 2 — Programmation côté serveur : PL/pgSQL, procédures stockées, déclencheurs et sécurité d’accès
  3. Leçon 3 — Transactions, contrôle de concurrence et reprise après panne
  4. Leçon 4 — Indexation, optimisation des requêtes, bases réparties et NoSQL

Modalités d’évaluation

Volume horaire : 20 h de cours magistral, 20 h de travaux dirigés, 20 h de travaux pratiques (60 h en présentiel) et 60 h de travail personnel de l’étudiant (TPE), soit 120 h pour 6 crédits. Évaluation : contrôle continu (TD notés, comptes rendus de TP guidés, mini-projet de base de données pour une application de gestion scolaire) et examen terminal écrit (conception, SQL, transactions, optimisation).

Bibliographie

  • Ramez Elmasri, Shamkant B. Navathe, Fundamentals of Database Systems, Pearson.
  • Abraham Silberschatz, Henry F. Korth, S. Sudarshan, Database System Concepts, McGraw-Hill.
  • Georges Gardarin, Bases de données, Eyrolles.
  • Martin Kleppmann, Designing Data-Intensive Applications, O’Reilly Media.
  • Documentation officielle PostgreSQL (postgresql.org/docs) et norme ISO/IEC 9075 (SQL).

Évaluation globale de la matière

Connectez-vous pour suivre votre progression.

Programme

  1. 🔒 Leçon 1 — Conception relationnelle avancée : dépendances fonctionnelles, normalisation et SQL analytique · 120 min
  2. 🔒 Leçon 2 — Programmation côté serveur : PL/pgSQL, procédures stockées, déclencheurs et sécurité d'accès · 120 min
  3. 🔒 Leçon 3 — Transactions, contrôle de concurrence et reprise après panne · 120 min
  4. 🔒 Leçon 4 — Indexation, optimisation des requêtes, bases réparties et NoSQL · 120 min
  5. 🔒 Quiz — Bases de données avancées · quiz

Évaluation globale de la matière

Connectez-vous pour suivre votre progression.