diff --git a/README.md b/README.md
index 2f7a23a5994ad9f0712377ceb9fce36c8e61d2ce..e55e5cbb26890f28bafb2800ac680d59e8127524 100644
--- a/README.md
+++ b/README.md
@@ -9,5 +9,7 @@ Construction d’une plateforme Big-Data sur la base de données issues d’une
 Notre jeu de données est celui-ci : 
 https://www.kaggle.com/datasets/dbdmobile/myanimelist-dataset
 
+Notre rapport est le rapport intitulé "rapport_final.md" (le reste sont des prises de notes personnelles).
+Vous trouverez les scripts et fichiers python dans les dossiers associés.
 Bonne lecture !
 
diff --git a/rapport/rapport.md b/rapport/rapport.md
index 8239bc675bf3ee96e191d4c65726686de42792bc..007bc005d86eeda829960f5f08d406cce97875cb 100644
--- a/rapport/rapport.md
+++ b/rapport/rapport.md
@@ -20,13 +20,17 @@ papersize: a4paper
 
 ## 1. Objectifs et mise en place
 
+La consigne du projet est la suivante : 
+Construction d’une plateforme Big-Data sur la base de données issues d’une bibliothèque Open Data choisie par chaque groupe d’étudiants et proposition d’un ensemble d’analyses représentatives du jeu de données de la plateforme
+
 ### Description des données et objectif
 
 Nous avons cherché des données d'au moins 2 Go, sans images car le traitement n'est pas le même.
 
 Le dataset que nous avons choisi fait 8 Go et porte sur les animés, trop bien : https://www.kaggle.com/datasets/dbdmobile/myanimelist-dataset/.
+(Dans les faits on a utilisé que 3 fichiers, donc on est plutôt sur 2/3 Go mais c'est bien quand même !)
 
-Il s'agit de données sur les animés, les profils d'utilisateurs et les notations des utilisateurs de la plateforme [MyAnimeList](https://myanimelist.net/).
+Il s'agit de données sur les animés, les profils d'utilisateurs et les notations des utilisateurs de la plateforme [MyAnimeList](https://myanimelist.net/). MyAnimeList permet de constituer sa liste de visionnage (animes déjà vus, en cours, abandonnées,...) et de les noter.
 
 Notre but est d'analyser ces données afin de trouver des tendances ou/et corrélation dans les données.
 
@@ -37,9 +41,11 @@ Pour cela, on utilisera les outils suivants :
 - Hadoop
 - Hive
 - Superset
+- Google Cloud
 
 ### Dépôt du projet et paquets
 
+On travaille d'abord sur la VM.
 On s'assure d'avoir les paquets nécessaires :
 ```shell
 sudo dnf install git wget unzip python3
@@ -84,6 +90,8 @@ Cette commande est dans le script `download_dataset.sh` :
 ```shell
 wget --header="Host: storage.googleapis.com" --header="User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36" --header="Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,/;q=0.8,application/signed-exchange;v=b3;q=0.7" --header="Accept-Language: fr-FR,fr;q=0.9,en-US;q=0.8,en;q=0.7,zh-TW;q=0.6,zh-CN;q=0.5,zh;q=0.4" --header="Referer: https://www.kaggle.com/" "https://storage.googleapis.com/kaggle-data-sets/3384322/6207733/bundle/archive.zip?X-Goog-Algorithm=GOOG4-RSA-SHA256&X-Goog-Credential=gcp-kaggle-com%40kaggle-161607.iam.gserviceaccount.com%2F20240519%2Fauto%2Fstorage%2Fgoog4_request&X-Goog-Date=20240519T145233Z&X-Goog-Expires=259200&X-Goog-SignedHeaders=host&X-Goog-Signature=1ac8f9216a239f62f3aa19666ce2b09c188d1d34d5199cf254a3677292e1b893eb10d0e2280baf0cbfb1f21d38a2b99f55e3e080beaa4a376d07326750503e15f35e123e2efd21c2c300a82c5bc06c787528bbe5e0d6b7be5a31bc0e6fb458b9a59456233fb852c658827d1dd547ca683890de508dd88940526568357bdd28611409ed5db0e479abf7b6f98855cd942d0cebfae55d463f288640c594bce7e11cd9f460e941cec80a7713e7faa54e69e3e9c4e9e3cd87b11bc35aa74439f96f80c2d592c6a97519353ca099d62e7276bec190a99e9327aee45ab9531d86f8f6be65fb3931148dbd4342712849494a71adcfe0b4eb54051582393fe8a98ebf68bc" -c -O 'dataset.zip'
 ```
+Les scripts en questions sont disponibles sur le git.
+
 
 On télécharge l'archive des données avec la requête wget puis on l'extrait :
 ```shell
@@ -102,7 +110,7 @@ Les données sont désormais dans le dossier `dataset/`, on compte 6 csv :
 
 Les fichiers `*-filtered.csv` et `final_*.csv` permettent d'être plus rapidement prêts à l'emploi en fonction de l'analyse qu'on compte faire dessus.
 
-On à fait le choix de se limiter aux tables `anime-dataset-2023`, `user-score-2023` et `user-filtered`.
+On à fait le choix de se limiter aux tables `anime-dataset-2023`, `user-details-2023` et `user-filtered`.
 
 On supprime les autres csv.
 ```shell
@@ -113,58 +121,55 @@ rm anime-filtered.csv final_animedataset.csv users-details-2023.csv
 Voici une description de nos tables : 
 
 - `anime-dataset-2023.csv`
-	- anime_id: Unique ID for each anime.
-	- Name: The name of the anime in its original language.
-	- English name: The English name of the anime.
-	- Other name: Native name or title of the anime(can be in Japanese, Chinese or Korean).
-	- Score: The score or rating given to the anime.
-	- Genres: The genres of the anime, separated by commas.
-	- Synopsis: A brief description or summary of the anime's plot.
-	- Type: The type of the anime (e.g., TV series, movie, OVA, etc.).
-	- Episodes: The number of episodes in the anime.
-	- Aired: The dates when the anime was aired.
-	- Premiered: The season and year when the anime premiered.
-	- Status: The status of the anime (e.g., Finished Airing, Currently Airing, etc.).
-	- Producers: The production companies or producers of the anime.
-	- Licensors: The licensors of the anime (e.g., streaming platforms).
-	- Studios: The animation studios that worked on the anime.
-	- Source: The source material of the anime (e.g., manga, light novel, original).
-	- Duration: The duration of each episode.
-	- Rating: The age rating of the anime.
-	- Rank: The rank of the anime based on popularity or other criteria.
-	- Popularity: The popularity rank of the anime.
-	- Favorites: The number of times the anime was marked as a favorite by users.
-	- Scored By: The number of users who scored the anime.
-	- Members: The number of members who have added the anime to their list on the platform.
-	- Image URL: The URL of the anime's image or poster.
-	- The dataset offers valuable information for analyzing and comprehending the characteristics, ratings, popularity, and viewership of various anime shows. By utilizing this dataset, one can conduct a wide range of analyses, including identifying the highest-rated anime, exploring the most popular genres, examining the distribution of ratings, and gaining insights into viewer preferences and trends. Additionally, the dataset facilitates the creation of recommendation systems, time series analysis, and clustering to delve deeper into anime trends and user behavior.
+	- anime_id: ID unique pour chaque anime.
+	- Name: Le nom de l'anime dans sa langue originelle.
+	- English name: Le nom anglais de l'anime.
+	- Other name: Nom d'origine ou titre de l'anime (peut être en japonais, chinois ou coréen).
+	- Score: Le score ou la note attribuée à l'anime.
+	- Genres: Les genres de l'anime, séparés par des virgules.
+	- Synopsis: Brève description ou résumé de l'intrigue de l'anime.
+	- Type: Le type de l'anime (par exemple, série télévisée, film, OVA, etc.).
+	- Episodes: Le nombre d'épisodes de l'anime.
+	- Aired: Les dates de diffusion de l'anime.
+	- Premiered:  La saison et l'année de la première de l'anime.
+	- Status: Le statut de l'anime (par exemple, Fini de diffuser, En cours de diffusion, etc.)
+	- Producers: Sociétés de production ou producteurs de l'anime.
+	- Licensors: Les concédants de licence de l'anime (par exemple, les plateformes de diffusion en continu).
+	- Studios: Les studios d'animation qui ont travaillé sur l'anime.
+	- Source: Le matériel source de l'anime (par exemple, manga, light novel, original).
+	- Duration: La durée de chaque épisode.
+	- Rating: La classification par âge de l'anime.
+	- Rank: Le rang de l'anime en fonction de sa popularité ou d'autres critères.
+	- Popularity: Le rang de popularité de l'anime.
+	- Favorites: Le nombre de fois où l'anime a été marqué comme favori par les utilisateurs.
+	- Scored By: Le nombre d'utilisateurs qui ont noté l'anime.
+	- Members: Le nombre de membres qui ont ajouté l'anime à leur liste sur la plateforme.
+	- Image URL: URL de l'image ou de l'affiche de l'anime.
+L'ensemble de données fournit des informations précieuses pour analyser et comprendre les caractéristiques, les classements, la popularité et l'audience de diverses émissions d'anime. En utilisant cet ensemble de données, il est possible d'effectuer un large éventail d'analyses, y compris l'identification des animes les mieux notés, l'exploration des genres les plus populaires, l'examen de la distribution des notes et l'obtention d'informations sur les préférences et les tendances des téléspectateurs. En outre, l'ensemble de données facilite la création de systèmes de recommandation, l'analyse des séries temporelles et le regroupement pour approfondir les tendances des anime et le comportement des utilisateurs.
 - `users-details-2023.csv`
-	- Mal ID: Unique ID for each user.
-	- Username: The username of the user.
-	- Gender: The gender of the user.
-	- Birthday: The birthday of the user (in ISO format).
-	- Location: The location or country of the user.
-	- Joined: The date when the user joined the platform (in ISO format).
-	- Days Watched: The total number of days the user has spent watching anime.
-	- Mean Score: The average score given by the user to the anime they have watched.
-	- Watching: The number of anime currently being watched by the user.
-	- Completed: The number of anime completed by the user.
-	- On Hold: The number of anime on hold by the user.
-	- Dropped: The number of anime dropped by the user.
-	- Plan to Watch: The number of anime the user plans to watch in the future.
-	- Total Entries: The total number of anime entries in the user's list.
-	- Rewatched: The number of anime rewatched by the user.
-	- Episodes Watched: The total number of episodes watched by the user.
-	- The User Details Dataset provides valuable information for analyzing user behavior and preferences on the anime platform. By examining mean scores and anime genres, you can gain insights into user preferences. Users can be segmented into different groups based on their watching behavior, such as active users and casual viewers. Personalized recommendation systems can be built using users' completed and plan-to-watch lists. Location-based analysis reveals anime popularity and user engagement in various countries. Trends in watching behavior, user retention, and gender-based differences in anime preferences can be identified. Additionally, you can explore rewatching habits and perform time series analysis to understand user engagement patterns over time.
-- `users-score-2023.csv`
-	- user_id: Unique ID for each user.
-	- Username: The username of the user.
-	- anime_id: Unique ID for each anime.
-	- Anime Title: The title of the anime.
-	- rating: The rating given by the user to the anime.
-	- The User Score Dataset enables various analyses and insights into user interactions with anime. By examining user ratings for different anime titles, you can identify highly-rated and popular anime among users. Additionally, you can explore user preferences and watch patterns for specific anime titles. This dataset also forms the foundation for building recommendation systems based on user ratings, helping to suggest anime that align with individual tastes. Furthermore, you can perform collaborative filtering and similarity analysis to discover patterns of similar user interests. Overall, this dataset offers valuable information for understanding user engagement and preferences on the anime platform.
+	- Mal ID: ID unique pour chaque utilisateur. (MAL = MyAnimeList)
+	- Username: Le nom d'utilisateur de l'utilisateur.
+	- Gender: Le sexe de l'utilisateur.
+	- Birthday: La date de naissance de l'utilisateur (au format ISO).
+	- Location: La localisation ou le pays de l'utilisateur.
+	- Joined: La date à laquelle l'utilisateur a rejoint la plateforme (au format ISO).
+	- Days Watched: Le nombre total de jours que l'utilisateur a passé à regarder des animes.
+	- Mean Score: La note moyenne attribuée par l'utilisateur aux animes qu'il a regardés.
+	- Watching: TLe nombre d'anime actuellement regardés par l'utilisateur.
+	- Completed: Le nombre d'anime terminés par l'utilisateur.
+	- On Hold: Le nombre d'anime en attente par l'utilisateur.
+	- Dropped: Le nombre d'anime abandonnés par l'utilisateur..
+	- Plan to Watch: Le nombre d'animes que l'utilisateur prévoit de regarder dans le futur.
+	- Total Entries: Le nombre d'animes que l'utilisateur prévoit de regarder dans le futur.
+	- Rewatched: Le nombre d'anime revus par l'utilisateur.
+	- Episodes Watched: Le nombre total d'épisodes regardés par l'utilisateur.
+L'ensemble de données User Details fournit des informations précieuses pour l'analyse du comportement et des préférences des utilisateurs sur la plateforme d'anime. En examinant les scores moyens et les genres d'anime, vous pouvez obtenir des informations sur les préférences des utilisateurs. Les utilisateurs peuvent être segmentés en différents groupes en fonction de leur comportement de visionnage, comme les utilisateurs actifs et les spectateurs occasionnels. Des systèmes de recommandation personnalisés peuvent être mis en place à partir des listes de films achevés et de ceux que les utilisateurs ont l'intention de regarder. L'analyse basée sur la localisation révèle la popularité des animes et l'engagement des utilisateurs dans différents pays. Il est possible d'identifier les tendances en matière de comportement de visionnage, de fidélisation des utilisateurs et de différences entre les sexes en ce qui concerne les préférences en matière d'anime. En outre, vous pouvez explorer les habitudes de relecture et effectuer des analyses de séries chronologiques pour comprendre les schémas d'engagement des utilisateurs au fil du temps.
+- `users-filtered.csv`
+	- mal_id_id: ID unique pour chaque utilisateur.
+	- anime_id: Identifiant unique pour chaque anime.
+	- rating:  La note attribuée par l'utilisateur à l'anime.
+L'ensemble de données sur les notes attribuées par les utilisateurs permet d'effectuer diverses analyses et d'obtenir des informations sur les interactions entre les utilisateurs et les dessins animés. En examinant les notes attribuées par les utilisateurs à différents titres d'animes, vous pouvez identifier les animes les mieux notés et les plus populaires parmi les utilisateurs. En outre, vous pouvez explorer les préférences des utilisateurs et les habitudes de visionnage pour des titres d'anime spécifiques. Cet ensemble de données constitue également la base de la création de systèmes de recommandation basés sur les évaluations des utilisateurs, ce qui permet de suggérer des animes qui correspondent aux goûts de chacun. En outre, vous pouvez effectuer un filtrage collaboratif et une analyse de similarité pour découvrir des modèles d'intérêts similaires chez les utilisateurs. Dans l'ensemble, cet ensemble de données offre des informations précieuses pour comprendre l'engagement et les préférences des utilisateurs sur la plateforme d'anime.
 
-- `user-filtered` : contient uniquement l'id de l'anime, l'id du user qui a mis la note, et la note.
 
 ## 2. Nettoyage des données et pré-analyse
 
@@ -183,7 +188,7 @@ pip install --upgrade pip
 python3 -m pip install pandas seaborn
 ```
 
-On exécute ensuite le code.
+On exécute ensuite le code. (également disponible sur le git)
 ```shell
 (mon-venv)$ python3 treat.py
 ```
@@ -228,7 +233,7 @@ Ici on va vouloir utiliser la librairie `seaborn` pour pouvoir afficher une "hea
 
 - Nombre d'utilisateurs par pays
 
-ici la chose à faire n'était pas si compliquée, il fallait différencier 3 cas dans les données de localisation (en splitant le string via le caractère de la virgule) : 
+Ici la chose à faire n'était pas si compliquée, il fallait différencier 3 cas dans les données de localisation (en splitant le string via le caractère de la virgule) : 
 
 On va faire alors une nouvelle colonne "COUNTRY" composée de : 
 - le string vide [""] -> on remplace par "UNKNOWN"
@@ -260,7 +265,8 @@ docker volume rm $(docker volume ls -q)
 
 On lance tout d'abord le cluster Hadoop avec les scripts de démarrage. Ces scripts sont disponibles dans le dossier `~/projet-ipbd24/docker-files/hadoop/`.
 
-Il s'agit de ceux vus en cours modifié. Les scripts de démarrage ont été légèrement factorisés avec l'introduction d'une variable pour définir le fichier `docker-compose` a utilisé. De plus, les conteneurs spark ont été enlevés car inutilisé et le nom du cluster est désormais `project` et non `test`.
+
+Il s'agit de ceux vus en cours modifiés. Les scripts de démarrage ont été légèrement factorisés; avec l'introduction d'une variable pour définir le fichier `docker-compose` qui a été utilisée. De plus, les conteneurs spark ont été enlevés car inutilisés et le nom du cluster est désormais `project` et non `test`.
 
 On lance le cluster :
 ```shell
@@ -304,7 +310,7 @@ Une fois le cluster Hadoop/Hive/Yarn lancé et les données mises sur HDFS, on p
 
 ### Création de la database du Hive
 
-On se connecte au docker du serveur Hive après être revenu sur la VM (quitter le docker avec C-D).
+On se connecte au docker du serveur Hive après être revenu sur la VM (quitter le docker avec Ctrl+D).
 ```shell
 docker exec -it hive-server bash
 ```
@@ -373,7 +379,7 @@ TBLPROPERTIES ("skip.header.line.count"="1");
 
 L'ancien fichier `files/scripts/init_db.sql` s'appelle désormais `wrong_init_db.sql` pour voir les différences.
 
-Pour régler la trop grande présence de valeurs nulles, on créer un répertoire par dossier csv. Actuellement, toutes les tables ont la même `LOCATION` ce qui peut pose problème.
+Pour régler la trop grande présence de valeurs nulles, on crée un répertoire par dossier csv. Actuellement, toutes les tables ont la même `LOCATION` ce qui peut poser problème.
 
 Pour pouvoir traiter les retours à la lignes dans le csv, on écrit un écrit un script python `files/scripts/replace_newlines.py` qui remplace les retours à la ligne dans les colonnes du csv par `\\n` afin que Hive puisse l'importer. On fournit les csv à traiter en ligne de commande, le script utilise les libraires `pandas`, `os` et `sys`.
 ```shell
@@ -383,7 +389,7 @@ cd ~/projet-ipbd24/files/
 	deactivate
 ```
 
-Les fichiers traité on pour nomenclature `*_modified.csv`.
+Les fichiers traités on pour nomenclature `*_modified.csv`.
 
 On recommence l'importation de 0 avec les csv modifiés :
 ```shell
@@ -425,7 +431,7 @@ SELECT * FROM users LIMIT 5;
 SELECT * FROM score LIMIT 5;
 ```
 
-Finalement, après toutes ces manipulations en allé retour pour vérifier quelle modifiction fonctionne, on a nos données proprement importé dans Hive ! Plus qu'à faire de belle visualisation dans Superset
+Finalement, après toutes ces manipulations en aller-retour pour vérifier quelle modifiction fonctionne, on a nos données proprement importées dans Hive ! Plus qu'à faire de belles visualisations dans Superset
 
 ### Résolution du problème de connexion à Hive
 
@@ -476,7 +482,7 @@ La commande néanmoins :
 docker compose up -f docker-compose.yml -d
 ```
 
-Quelque chose était possiblement mal configuré, je n'ai pas spécialement cherché plus loin et j'ai installé la version `non-dev`. Il fallait d'abord désinstaller la version `dev`, ce qui a posé quelques problèmes car le network `superset_default` était encore up et ne voulait pas être arrêté. Je pense que cela était dû à un arrêt du lancement mal géré lors d'un Ctrl-D.
+Quelque chose était possiblement mal configuré, je n'ai pas spécialement cherché plus loin et j'ai installé la version `non-dev`. Il fallait d'abord désinstaller la version `dev`, ce qui a posé quelques problèmes car le network `superset_default` était encore up et ne voulait pas être arrêté. Je pense que cela était dû à un arrêt du lancement mal géré lors d'un Ctrl+D.
 
 J'ai donc inspecté ce réseau, ce dernier avait encore un `endpoint` actif ce qui l'empêchait d'être arrêté. Après déconnexion de l'endpoint, c'était bon.
 ```shell
@@ -527,6 +533,8 @@ On clique ensuite sur "Connect", la db est créée sur Superset bien qu'une erre
 
 Superset est actuellement toujours configuré en mode développement. Mettre en place un environnement de production digne de ce nom selon les indications de la documentation nécessite un certain nombre de changement.
 
+On a également essayé de créer des dashboards à partir de nos datasets, mais l'import des données depuis hive a été mal géré par superset (conversion en VARCHAR des STRING). Il faudrait réessayer en compressant les données au préalable.
+
 https://superset.apache.org/docs/configuration/configuring-superset/#setting-up-a-production-metadata-database
 https://superset.apache.org/docs/installation/docker-compose
 https://minikube.sigs.k8s.io/docs/start/
@@ -537,6 +545,9 @@ minikube : kubernetes pour une seul host (VM).
 
 Les commandes pour tout mettre en place, en dehors de ce qui concerne l'interface Superset et la création des dashboard (via l'UI).
 
+
+## 6. Google Cloud
+
 ```shell
 ```
 
diff --git a/rapport/sake.txt b/rapport/sake.txt
index c655bc7bb6c5c57c3b9684520cdfb8e8fe3913e0..93a14003ef28f6a714f7756872197ed8a681e63e 100644
--- a/rapport/sake.txt
+++ b/rapport/sake.txt
@@ -88,7 +88,6 @@ II- Analyse du data set et élaboration de la stratégie d'analyse
 
 
 
-III- Prétraitement des données
 
 
 IV- Construction de la plateforme Big Data