Académique Documents
Professionnel Documents
Culture Documents
UE NFP107
CORRIGE EXAMEN
Premier semestre
Question 1 : Concevoir le nouveau modèle physique de données MPD (en 3FN) afin de réaliser les
évolutions demandées à partir du modèle existant (7 points) :
Vous êtes libre d’imaginer la définition d’un employé. Un index sur le nom de l'employé est demandé.
Question 1 : Ecrire la requête SQL permettant de calculer le nombre moyen de ligne de commande
par commande. (1 point)
Question 2 : Ecrire la requête SQL permettant de calculer le nombre de client sans type client.
(1 point)
Question 3 : Ecrire la requête SQL permettant d’afficher l'ensemble des clients (avec le nom et le
libellé du type client) sous SQL/ANSI 99 sachant que la clé étrangère type_client n'est pas obligatoire.
(1 point)
Question 1 : Par rapport au modèle physique de données ci-dessus, écrivez la requête SQL (LDD)
permettant de définir la clé étrangère sur la table client. (1 point)
Question 2 : Définissez la contrainte d’intégrité référentielle (CIR) avec comme exemple l'insertion
d'un enregistrement dans la table CLIENT et la suppression d'un enregistrement dans la table
TYPE_CLIENT) . (1 point)
L'intégrité référentielle permet de décrire les liens de référence entre deux tables et de préciser les
contraintes de mise à jour.
L'intégrité référentielle signifie que la clé externe dans une table de références doit toujours renvoyer à
une ligne valide dans la table référencée.
L'intégrité référentielle garantit que la relation entre deux tables reste synchronisée pendant les mises
à jour et les suppressions.
L'intégrité référentielle nécessite que ces deux tables CLIENT et TYPE_CLIENT soient synchronisées.
Autrement dit, chaque TYPE_CLIENT de la table CLIENT doit également exister dans la table
TYPE_CLIENT.
De même, l’application ne peut pas ajouter simplement un CLIENT en l'absence d'un TYPE_CLIENT
valide dans la table TYPE_CLIENT. Il en résulterait l'insertion de données « incorrectes ». Ainsi,
l’application doit s'assurer de la présence d'un TYPE_CLIENT valide dans la table TYPE_CLIENT
avant d'insérer le CLIENT correspondant.
b) Index. (2 points)
Question 1 : Définissez les avantages d'un index de type arbre B+ avec un cas d'utilisation. (1 point)
Ce type d'index est utilisé couramment au sein des SGBD/R (contexte OLTP).
Oracle propose à peu près toutes les structures d’index, par défaut l’index est un arbre B+.
L'index bitmap est un mécanisme alternatif d’indexation qui permet d'indexer une table sur un attribut
qui ne prend qu’un petit nombre de valeurs distinctes et qui offre de trés bonnes performances sur
combinaison de critères dans le cadre des requêtes de type sélection.
Ce type d'index est utilisé notamment dans les entrepôts de données (contexte R-OLAP).
L’idée de base est de faire coopérer des disques durs produits en masse (donc peu coûteux) dans
l’objectif de créer une architecture performante, sécurisée et à haute disponibilité.
RAID 0 : concaténation
Dans cette architecture, la donnée à stocker est répartie sur différents disques synchronisés et
aucune information de redondance n'est stockée. Il en résulte une vitesse de transfert importante
(multiplication des axes). Cependant la moindre panne disque entraîne la perte irrémédiable de
données.
RAID 1 : miroir
Dans cette architecture, le but est de répliquer les données sur un disque miroir à chaque écriture
(d'où une redondance utile en cas de panne disque). Le coût est bien évidemment élevé puisque la
capacité installée est le double de la capacité utile.
L'association de disques en RAID 0 (Striping) permettra d'améliorer soit les performances en lecture
et écrire simultanée sur plusieurs disques pour en augmenter le débit. Elle permettra aussi
d'augmenter la capacité, les partitions pouvant s'étendre sur plusieurs disques.