Niveau d'étude
BAC +3
ECTS
3 crédits
Composante
Sciences économiques, gestion, mathématiques et informatique
Volume horaire
32h
Période de l'année
Enseignement cinquième semestre
Description
Ce module approfondit les fondements théoriques et les mécanismes internes des bases de données relationnelles. Il couvre l'algèbre relationnelle et son lien avec SQL, l'optimisation de requêtes (plans d'exécution, réécriture), la normalisation des schémas (dépendances fonctionnelles, formes normales), l'indexation (B-tree, sélectivité, compromis lecture/écriture) et le modèle transactionnel (ACID, isolation, concurrence). Les TD permettent de mettre en pratique ces concepts sur un Système de gestion de base de données (SGBD) réel.
Objectifs
- Relier une requête SQL à une expression d'algèbre relationnelle et comprendre les règles de transformation et de réécriture.
- Expliquer les principes d'optimisation de requêtes (push-down de sélections/projections, ordres de jointure) et lire un plan d'exécution.
- Appliquer la normalisation (dépendances fonctionnelles, 1FN–3FN/BCNF), identifier les anomalies et justifier les compromis avec la dénormalisation.
- Comprendre l'indexation (B-tree, hash, index multi-colonnes), raisonner sur les coûts et l'impact sur les performances.
- Expliquer le modèle transactionnel (ACID, niveaux d'isolation, anomalies de concurrence) et les mécanismes de contrôle (verrous, MVCC).
Évaluation
Modalités : Mixte : CC + CT
SESSION 1 :
Contrôle Continu
• Type : Écrit, QCM, Projet
• Durée : --
• Précisions : Le contrôle continu représente 50 % de la note finale,
et comprend un devoir écrit ou sur machine comptant pour 25 % et un travail (pouvant prendre la forme d’un projet, d’une présentation, d’un QCM, d’une épreuve écrite) comptant pour 25 %.
Contrôle Terminal
• Type : Écrit
• Durée : 1h30
• Précisions : L’examen final représente 50 % de la note finale.
Régime Dérogatoire
• Type : Écrit
• Durée : 1h30
• Précisions : L’examen final représente 100 % de la note finale.
SESSION 2 :
• Type : Écrit
• Durée : 1h30
• Précisions : L’examen final représente 100 % de la note finale.
► Les différentes épreuves écrites, qu’il s’agisse de l’examen final, du devoir, de l’examen terminal en régime dérogatoire ou de la seconde session, ont une durée indicative de 1h30, susceptible d’être ajustée en fonction des contraintes pédagogiques, matérielles ou logistiques, dans le respect des M3C applicables. Les absences, les aménagements éventuels et les autres situations particulières sont traités conformément aux M3C en vigueur.
Utilisation de l'intelligence artificielle :
Pour cet EC, l’usage de l’intelligence artificielle (IA) générative pour aider à la réalisation des travaux soumis à évaluation est interdite, sauf éventuelles exceptions dûment spécifiées par l’enseignant responsable du cours. Dans le cadre de ces éventuelles exceptions, les principes suivants doivent être respectés.
Les résultats fournis par l’IA doivent constituer un matériau pour votre réflexion, et toujours faire l’objet d’une réappropriation et d’une reprise critique.
Tous les usages doivent être documentés dans une section dédiée à la fin de votre travail, à l’exception des usages de recherche web augmentée, de correction orthographique et syntaxique. Cette section doit permettre à votre lecteur d’évaluer la manière dont vous avez travaillé avec l’IA et mobilisé cette ressource au service d’un travail personnel.
L’intégration directe de contenus engendrés par l’IA doit être faite sous le régime de la citation.
Toute utilisation non déclarée ou non autorisée d’un outil d’IA pourra être considérée comme un manquement aux règles d’intégrité académique.
Il est également demandé aux étudiants de ne pas transmettre à des outils d’IA des données confidentielles ou personnelles concernant l’université, les enseignants, les entreprises partenaires ou d’autres étudiants.
Heures d'enseignement
- CMCM16h
- TDTD16h
Pré-requis obligatoires
SQL relationnel (SELECT, jointures, agrégations, sous-requêtes), schémas relationnels (clés, contraintes), notions de performance et bases de logique.
Compétences visées
- Traduire des requêtes SQL en algèbre relationnelle et inversement.
- Analyser un plan d'exécution et proposer des optimisations (réécriture de requête, ajout d'index).
- Décomposer un schéma relationnel en formes normales sans perte d'information ni perte de dépendances.
- Choisir une stratégie d'indexation adaptée à un profil de charge (lecture et écriture).
- Concevoir des scénarios transactionnels corrects en identifiant les anomalies potentielles et le niveau d'isolation approprié.
