Examen de la session principale
Big Data et architectures associées
Niveau : 3eme IM Date: Jan. 2024
Nombre de pages : 2 pages Durée : 1h 30 mn
Documents non autorisés
Remarque : Lisez tout l’énoncé de l’examen avant de le commencer. Vous pouvez commencer par les questions ou
l’une des parties du problème qui vous arrange.
Questions (7 pts)
1. Définir, brièvement, les concepts suivants :
a. Spark Context
b. NodeManger
c. Shuffle
d. HBase
2. Comparer entre l’analyse de données avec des programmes MapReduce et ceux en Spark
3. Quelles sont les utilités des applications écosystème Hadoop ?
4. Comment les données structurées sont analysées via hdfs et Hive ?
5. Compléter le schéma ci-dessous afin d’expliquer les étapes d’un programme mapreduce
permettant de compter le nombre d’occurrences de chaque lettre du fichier d’entrée.
Exercice N°1 (6 pts)
Nous considérons [Link] contenant les transactions commerciales d’une
entreprise. Chaque donnée est un enregistrement qui contient notamment l’identifiant du
client « ClientID », et le montant de la transaction identifié par la clé « Price ». Nous
cherchons à calculer la valeur totale et celle moyenne de vente par client.
1. écrire les commandes hadoop nécessaires pour stocker les [Link] sous le
répertoire data sous hdfs.
2. écrire la fonction [Link] et [Link] et [Link] permettant de
calculer la valeur totale de vente par client et la valeur moyenne de vente par client
3. écrire les commandes hadoop jar permettant d’exécuter le mapper et les reducers
4. Afficher le résultat de la valeur total de vente par client
Exercice N°2 (6 pts)
Nous considérons un fichier texte, hdfs:///input/[Link], contenant des mesures « Année,
Mois, Température », à raison d’une seule température mesurée par mois (donc 12 mesures
par an). On souhaite arriver à générer des couples (Année, TempératureMoyenne) par
une approche MapReduce en Spark.
1. Quelle est l’architecture de Spark ?
2. Comparez entre un programme MapReduce de Yarn et l’utilisation des fonctions
map et reduce de scala ?
3. Ecrire les commandes scala permettant de :
a. Créer le RDD Temp contenant le contenu du fichier [Link].
b. Déterminer le nombre d’enregistrements du fichier [Link].
c. afficher les températures de l’année 2023.
d. Retourner la température la plus élevée durant les années 2020,2021,2022 et
2023.
e. Retourner la température moyenne durant les années 2020,2021, 2022 et 2023.
Bon travail.