Enonce TP Spark
Table des Matières
TP a realiser en seance¶
Cet énoncé présente les 2 exercices à réaliser en séance. Le compte-rendu, à déposer sur pedagogie3.ec-lyon.fr, porte sur les deux exercices.
Les principales commandes de pyspsark sont présentées dans ce doc: PySpark RDD Cheat Sheet.
Exercice 1 (75 minutes) : retrouver un arbre remarquable¶
Déplacez vous dans le répertoire de travail:
Le fichier arbresremarquablesparis.csv a été téléchargé depuis le site Opendata Paris. Pour information, vous retrouverez le fichier en cliquant sur ce lien, choisir le menu Export et le format csv (196 KOctets).La commmande
indique que le fichier contient 189 lignes (i.e. arbres) . La commande montre que chaque ligne décrit un arbre de la manière suivante (la première ligne du fichier décrit précisément l’intitulé de chaque colonne):- position GPS, arrondissement,
- genre, espèce, famille,
- année de plantation, hauteur, circonférence, etc.
Le séparateur entre les colonnes est le caractère ‘;’. Pour supprimer la première ligne, il suffit d’écrire:
Copiez alors arbresremarquablesparis2.csv sur HDFS (dans le répertoiresinput).
Remarque :
- Vous ne pouvez pas rédiger vos algorithmes sur le Namenode (il n’y a pas d’éditeur de texte graphique). Éditez le fichier sur votre système d’exploitation, et envoyez-le sur le Namenode par la commande
docker cp ....
Travail à réaliser Écrivez des programmes pyspark permettant
- d’afficher les coordonnées GPS, la taille et l’adresse de l’arbre le plus grand.
- Certains arbres n’ont pas de taille renseignée : on devra donc filtrer le RDD en supprimant les lignes dont la hauteur est égale à
''. - La hauteur est une chaîne de caractères. Pour la transformer en nombre réel :
hauteur_decimal = float(hauteur_string). - Pour vérifier le résultat, vous pouvez utiliser ce site. Entrez les coordonnées GPS trouvées et vérifiez que l’adresse est bien la bonne !
- Certains arbres n’ont pas de taille renseignée : on devra donc filtrer le RDD en supprimant les lignes dont la hauteur est égale à
- d’afficher les coordonnées GPS des arbres de plus grande circonférence pour chaque arrondissement de la ville de Paris.
- d’afficher toutes les espèces d’arbre, triées par genre.
Exercice 2 (90 minutes): The MovieLens Database¶
Remarque : Vous NE devez PAS utiliser pyspark.sql dans votre requête !
Téléchargement des données
Créez un répertoire de travail
Téléchargez la base de données et la décompresser: Dans le répertoire ml-latest-small, créé lors de la décompression, vous constaterez que les fichiers contiennent 100000 évaluations et 3600 tags donnés par 600 utilisateurs concernant 9000 films.Travail à réaliser
Proposez une (1) requête, écrite en pyspark (et non en pyspark.sql), relativement sophistiquée (et originale) qui interroge plusieurs fichiers de cette base. Le CR, à remettre en fin de séance, doit être déposé sur pedagogie3.ec-lyon.fr.
N’oubliez pas de mettre votre nom, d’expliquer votre requête en français, de commenter votre code (pas trop et pas trop peu, avec des noms de variables explicatifs) et de copier une partie des résultats fournis par votre requête. Il faut que le correcteur de votre CR puisse rejouer votre requête et obtenir les mêmes résultats.