CONSERVATOIRE NATIONAL DES ARTS ET METIERS
PICARDIE

NFE206 - Ingénierie des bases de données  [ 6 crédits ]

Public Concerné
DEST en informatique ou licence informatique ou équivalent, maîtrise du modèle relationnel et bases en SQl et dans les systèmes informatiques

Finalité de l'unité d'enseignement
Objectifs pédagogiques

Ce cours fait suite au cours NF107. Il s'adresse aux auditeurs intéressés par les fondements du modèle relationnel (introduction à la théorie des dépendances appliquée à la conception d'un bon schéma, calcul relationnel, fondement du langage de requêtes satndard SQL) et la maîtrise des fonctions du noyau d'un SGBD relationnel.
En ce qui concerne les fonctionnalités du noyau relationnel, cette année l'accent est mis sur la concurence distribuée et l'optimisation d'une requête relationnelle. D'autres aspects importants qui pourraient être couverts une autre année concernent notamment l'évalaution des performances d'un SGBD relationnel ou le paralléllisme.
L'optimisation des requêtes SQL par un SGBD relationnel est l'une des clés des performances d'un SGBD relationnel en vue de la gestion et de l'interrogation efficace de gros volumes de données. Cette optimisation est vue partiellement (15 Heures) en NFP107 avec un modèle simple d'exécution, trop simple pour une connaissance fine des stratégies d'optimisation d'un SGBD relationnel, mais suffisante pour d'autres domaines de spécialisation ou métiers. L'optimisation est revue ici de manière approfondie avec un modèle tenant compte des mouvements de mémoire. La formation d'experts dans ce domaine est un des besoins reconnus de l'industrie dans le domaine de l'ingénierie des systèmes de gestion des bases de données et est une des composantes de nombreux métiers: Architecte de SGBD, Administrateur de Bases de données, Ingénieur en Systèmes de gestion de données, Gestionnaire d'entrepôts de données,Urbaniste, etc.
Cette maîtrise passe par la compréhension de techniques (optimisation de l'accès au support physique, algorithmique, stratégies d'optimisation) et leur mise en pratique avec les SGBD comme ORACLE ou MySQL qui offrent des possibilités extrêmement variées et fines qu'on ne peut acquérir que par des TP.
Par ailleurs ce cours aborde quelques fondements classiques des Bases de données relationnelles qui n'ont plus leur place dans un cours niveau I1 (e.g. NFP107) vu le nombre d'heures restreintes etl'évolution des cursus: introduction à la théorie des dépendances appliquée à la conception d'un bon schéma, introduction au calcul relationnel (fondement du langage standard SQL). Cette dernière partie ne demande pas des connaissances en logique mathématique.
Capacité et compétences acquises
Maîtrise des fondements de SQL et de certaines fonctionnalités du moyau d'un SGBD relationnel comme l'optimisation d'une requête relationnelle

Organisation
6 Crédits 

Contenu de la formation
Programme :
1) Optimisation SQL :
a. Optimisation de l'accès disque, technologies RAID, SAN, techniques d'anticipation, de placement
b. Rappels sur les fichiers, index, arbre B, index bitmap
c. Algorithme de tri externe
d. Algorithmes pour la projecton, la jointure et les autres opérations importantes
e. Règles d'optimisation logique
f. Accumulation de statistiques et utilisation pour l'optimisation
g. Stratégies d'optimisation tenant compte des mouvements de mémoire et des statistiques
h. Pipelinage de requêtes
i. Stratégies d'optimisation tenant compte du coût de fonctions utilisateur
2) Conception d'un schéma relationnel
a. Introduction à la théorie des dépendances fonctionnelles
b. Application à la définition de clés, et à la décomposition
3) Calcul relationnel
a. calculs relationnels domaine et nuplet
b. du calcul à SQL
4) TP d'optimisation sur ORACLE ou MySQL . En faisant varier la base, et en utilisant l'outil explain, on observe le choix de l'optimiseur du SGBD des stratégies d'optimisation de nombreuses requêtes SQL variées en mode " rule " d'abord et ne mode " statistiques " ensuite. Ce TP demande une connaissance de base de SQL.