Etablissement : ISET-Bizerte Département : Technologies de l’Informatique
Matière : Gestion des données massives Année Universitaire : 2021 - 2022
Niveau : DSI3 Enseignants : H. HMIDA, N. HACHANI
NOSQL, MongoDB
Questions de cours :
1. Rappeler l’objectif et les caractéristiques des bases de données NOSQL.
2. Comment la réplication est implémentée dans MongoDB et rappeler l’objectif de cette
technique ?
3. Expliquer la technique de Sharding utilisée par MongoDB en donnant le détail des différents
composants de cette solution.
4. Quelles sont les familles des bases de données NOSQL ? Donner un exemple de chaque famille
ainsi que le type d’applications recommandé.
5. Donner le principe du théorème CAP.
6. Dresser un tableau comparatif entre les bases NOSQL et relationnelles.
Exercice 1 :
Soit le modèle entité/association suivant :
1. Proposer une modélisation normalisée sous MongoDB en précisant les structures de documents
et les collections. Quels sont les avantages et limites de cette modélisation ?
2. Répondre aux requêtes suivantes :
a. Insérer les données suivantes (code : "DSI31", année : 3, spécialité : "DSI", type : "Cours
intégré", volume_semaine : 1.5)
b. Trouver les niveaux (année, spécialité) qui ont au moins une matière avec un volume
supérieur à 3 heures par semaine.
c. Chercher les spécialités de 2ème année ayant une matière dont le nom commence par ‘A’.
d. Calculer le volume horaire de chaque niveau.
1/3
Exercice 2 :
Soit le document MongoDB suivant :
1. Trouver un schéma relationnel qui est équivalent à ce document.
2. Répondre aux requêtes suivantes :
a. Ajouter les notes de la matière Anglais (ds = 14.25 et examen 13) pour l’étudiant affiché
dans la figure ci-dessus.
b. Ajouter un champ “absences” avec valeur 0.
c. Incrémenter de 1 les absences des étudiant de TI1.
d. Supprimer les étudiants dont les absences ont dépassé 4.
e. Modifier le groupe des étudiants dont le nom commence par “A” à la valeur 1.
f. Les étudiants (nom et prénom) du groupe DSI31 dont le nom commence par ‘A’.
g. Les étudiants (nom, prénom, matières) ayant une note d’examen inférieure à 10.
h. Les étudiants (nom, prénom, matières) n’ayant pas de note <8.
i. Les étudiants (nom, prénom, matières) qui n’ont une note comprise entre 10 et14 dans la
matière “Algorithmique I”.
j. Calculer le nombre d’étudiants par groupe. Le résultat est trié par nombre d’étudiants
décroissant.
k. Calculer la note d’examen moyenne de la matière « POO » de SEM21.
2/3
Exercice 3 :
Ci-dessous est représenté le schéma relationnel d’une application de vente :
Proposez une modélisation, selon l’approche NOSQL, via des documents JSON pour les besoins suivants :
1. Nous voulons stocker le comportement client en collectant les informations sur les clients, des
informations sur les produits achetés (description) ainsi que les prix de ces produits.
2. Nous voulons stocker le comportement représentant en collectant les informations sur le représentant,
sur les clients avec lesquels il a traité ainsi que les dates de commandes lancées par ces clients.
3/3