Skip to content

polytech-nantes-puddi/tp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Polytech Nantes - Mini-projet

Prérequis

L'ensemble de ce TP est à réaliser sur Linux (Debian et Ubuntu par exemple).

Part 0 - Setup

L'objectif de cette étape est de préparer l'environnement pour la réalisation de ce mini-projet.

La première étape consiste à cloner ce projet :

git clone https://github.com/polytech-nantes-puddi/tp.git

Nous allons ensuite procéder à l'installation des prérequis systèmes :

sudo apt update
sudo apt install openjdk-11-jdk
sudo apt install python3 python3-venv
python3 -m venv spark-env

Il est maintenant nécessaire d'activer l'environnement virtuel Python :

source spark-env/bin/activate

Nous procédons ensuite à l'installation des paquets python nécessaire au TP :

pip install --upgrade pip
pip install pyspark

Note : À chaque fois que vous ouvrirez un nouveau terminal, il sera nécessaire d'activer l'environnement virtuel Python avec la commande :

source spark-env/bin/activate

Part 1 - Download files

L'objectif de cette étape est de télécharger les fichiers de données nécessaires à la réalisation de ce mini-projet :

make part1

Cela devrait :

  • Télécharger les ZIP de données dans le répertoire dataset/zip/
  • Extraire les données des ZIP dans le répertoire dataset/raw/

Pour information, la documentation sur les données est disponible ici : http://data.gdeltproject.org/documentation/GDELT-Data_Format_Codebook.pdf

Part 2 - Work count example

  1. Exécuter la version wordcount Python :
python3 part2-wordcount-hamlet-python.py
  1. Exécuter la version wordcount PySpark (version RDD) :
spark-submit part2-wordcount-hamlet-pyspark.py
  1. Exécuter la version wordcount PySpark (version Dataframe) :
spark-submit part2-wordcount-hamlet-pyspark-2.py
  1. Comparer les résultats.
  2. Adapter les scripts ci-dessus pour filtrer les mots commençant par la lettre m.
  3. Quelle différence sur votre traitement ?

Quelques documentations utiles :

Part 3 - Processing data

  1. Adapter le script part3.py pour obtenir le top 10 des pays les plus pertinents dans l'actualité sur l'échantillon de données téléchargé.

Nous considérerons le code pays comme l'identifiant à trois lettres représenté par Actor1CountryCode (colonne 7), nous compterons la pertinence d'un événement en fonction de sa colonne NumMentions (colonne 31).

Cela revient à l'exercice WordCount où nous comptons les NumMentions de chaque événement par pays pour déterminer le Top 10.

Rappel concernant pour l'exécution :

spark-submit part3.py

Part 4 - Exposing data

  1. Convertir les données en parquet :
spark-submit part4-convert-to-parquet.py
  1. Adapter le script part4.py pour réaliser la même analyse que la partie précédente, mais à partir de la vue temporaire.

Rappel concernant pour l'exécution :

spark-submit part4.py

Quelques documentations utiles :

Sujet pour le plaisir

Récupération des données

make bonus

Exécution du code sample

python3 bonus-sample.py

Questions

  • Quelle est la station avec le plus de mesures en 2022 ?
  • Quelle est la mesure moyenne de Nitrites dans la station L'ERDRE A LA CHAPELLE SUR ERDRE ?
  • Quelle est la station ayant la plus haute température moyenne en 2019 ?
  • Quelle est la commune regroupant le plus de stations ?

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published