Semaine 61 - intermédiaire
Imaginez que vous travaillez pour une entreprise de télécommunications et que votre collègue Rick vous a envoyé une feuille de calcul contenant une liste de produits.
Votre tâche consiste à nettoyer et à transformer ces données en une table Snowflake et à créer un fichier JSON dans un format spécifique pour que Rick puisse le télécharger vers un outil tiers.
Mais il y a quelques opérations de nettoyage à effectuer avant que les données ne puissent être utilisées efficacement. Dans sa tentative de rendre la feuille de calcul jolie, Rick a fusionné certaines cellules de la colonne "Marque", ce qui compliquera bien sûr votre tâche.
Télécharger le fichier de données sur s3://frostyfridaychallenges/challenge_61/Telecom Products – Sheet1.csv
Nettoyage des données :
- Remplissez les valeurs nulles de la colonne "Marque" avec la valeur de la première ligne non vide au-dessus (remplissage vers l'avant).
- Remplissez les valeurs nulles de la colonne "URL conviviale" avec l'URL correspondante de la deuxième colonne.
- Supprimez les lignes avec des valeurs nulles dans la colonne "Catégorie".
Création d'objet JSON :
- Transformez les données nettoyées en un objet JSON imbriqué dans le format suivant
{"Category": {"Brand": [{"Product Name": "Friendly URL"}],"Brand": [{"Product Name": "Friendly URL"},{"Product Name": "Friendly URL"}]},"Category": {"Brand": [{"Product Name": "Friendly URL"}]},...}Déchargement des données :
- Une fois l'objet JSON créé, déchargez les données dans un fichier JSON vers un stage Snowflake.
- Envoyez à votre collègue un lien pré-signé vers le fichier.
Résultats finaux :
- Table Snowflake : Un ensemble de données nettoyées et transformées prêtes à être utilisées par vous et vos collègues, ressemblant à la capture d'écran ci-dessous.

Fichier JSON : Un fichier JSON dans le format requis, adapté pour que Rick puisse le télécharger vers un outil tiers. Faites attention à la majuscule de la colonne "Category".

Quelques conseils
- Les window functions devraient faciliter le remplissage des valeurs vides dans Snowflake.
- Vous pouvez créer une UDF (fonction définie par l'utilisateur) pour faciliter la conversion des majuscules des valeurs de la colonne "Category".
- Le chiffrement côté serveur est requis sur l'étape de déchargement pour pouvoir générer un lien pré-signé.
Amusez-vous bien !