← Retour aux projets

Projet ITS · travail de groupe

Big Data NoSQL avec Databricks

Analyse des annonces Inside Airbnb pour Amsterdam et Rio de Janeiro : couches Bronze, Silver et Gold exportées, avec leurs limites d’exécution.

Explorer l’architecture

Contexte

Projet ITS du groupe Big Data NoSQL Gang, développé sur l’ancienne Databricks Community Edition. L’archive récupérée contient les notebooks sources Bronze, Silver et Gold, une documentation et une configuration de visualisation ; elle ne contient ni CSV ni résultats d’exécution. « NoSQL » est le nom du projet, pas la preuve de l’usage d’une base NoSQL.

Problème

Préparer les données Inside Airbnb d’Amsterdam et de Rio de Janeiro pour analyser annonces et avis, en séparant ingestion, normalisation et requêtes analytiques.

Objectif

Organiser une pipeline Bronze/Silver/Gold et écrire des requêtes pour comparer les deux villes. L’objectif du groupe ne prouve pas une exécution complète de bout en bout.

Mes responsabilités

J’étais chef d’équipe et je m’occupais surtout de la coordination et de l’ingestion des données. Le notebook Bronze exporté porte mon nom et documente cette étape. Les transformations Silver, requêtes Gold et visualisations sont présentées comme un travail collectif : les noms de fichiers ne prouvent pas l’auteur de chaque cellule.

Architecture

Couches définies dans l’export

  1. 01Bronze : 4 tables
  2. 02Silver : annonces
  3. 03Gold : vues et requêtes
Les notebooks définissent Bronze, Silver et Gold ; silver_reviews manque et aucune exécution complète n’est vérifiée.

Mise en œuvre documentée

Le notebook Bronze lit quatre CSV détaillés d’annonces et d’avis depuis un volume Databricks, ajoute la ville et un horodatage d’ingestion, puis définit quatre tables Delta. Le notebook Silver crée silver_listings par UNION ALL des annonces d’Amsterdam et de Rio, sélectionne des colonnes et convertit types et prix. La documentation mentionne silver_reviews, mais son code manque dans l’archive. Le notebook Gold définit des vues SQL de comptage et de distribution ; le fichier IPYNB conserve deux configurations de graphiques sans valeurs exportées.

Décisions techniques et compromis

  • Lecture des CSV

    Bronze conserve les colonnes sous forme de chaînes et configure les champs multiligne, guillemets, échappement et mode PERMISSIVE pour les textes complexes. La documentation justifie le passage des jeux summary aux jeux detailed pour conserver les notes ; les fichiers d’origine ne sont pas dans l’archive.

  • Séparation des couches

    Silver conserve les lignes avec UNION ALL et reporte les filtres analytiques à Gold. La documentation indique que les annonces n’ont pas été dédupliquées ; aucun contrôle exporté ne prouve l’unicité des identifiants.

  • Comparabilité des prix

    La documentation distingue l’euro à Amsterdam du real brésilien à Rio et préconise des comparaisons par ville. Certaines requêtes Gold exportées n’appliquent pas le filtre de ville prévu : cette précaution n’est pas établie pour tous les graphiques.

Contrôles et vérifications

La vérification se limite aux sources exportées. Jeux de données, journaux d’exécution et résultats manquent ; le code de silver_reviews est absent et certaines requêtes Gold doivent être corrigées.

Éléments et résultats documentés

  • Artefacts sources

    Un notebook d’ingestion définissant quatre tables Bronze, un notebook définissant silver_listings et un notebook Gold contenant vues et requêtes analytiques sont disponibles.

  • Visualisations

    Un export IPYNB conserve les paramètres de deux graphiques de comptage par ville et par type de logement. Il ne contient ni les données des graphiques ni un aperçu du tableau de bord final.

Limites et améliorations

Les comptages, performances et l’achèvement de la pipeline ne peuvent être vérifiés sans jeux de données, journaux d’exécution et résultats. Le code de silver_reviews manque ; certaines requêtes Gold en dépendent ou comportent des erreurs et incohérences. Le volume et le catalogue Databricks doivent être recréés pour une nouvelle exécution. La diffusion des artefacts collectifs exige une revue des droits et l’accord des coauteurs.

Technologies

  • Databricks Community Edition (environnement d’origine)
  • PySpark
  • Spark SQL
  • Delta Lake
  • Inside Airbnb (source de données déclarée)

Sources et périmètre

Ce cas décrit uniquement l’export original retrouvé et le rôle personnel déclaré par Samuel. Les définitions SQL montrent l’intention technique, pas la réussite de chaque cellule. Aucune métrique ni aucun tableau de bord final n’est attribué au projet.

Les notebooks, jeux de données et tableaux de bord restent privés pendant la vérification des données, licences, contributions et autorisations du groupe.