Data Science Engineer, Polytechnique Montréal / Université de Technologie de Compiègne
Interested in Sports, Motorsport, Sailing races, Science, Data, Technology, Engineering
View my Certified Microsoft Profile
PL-300 | DP-600 | DP-700
View my Curriculum Vitæ
View my LinkedIn profile
For any information, feel free to send me an email.
Ce POC (Proof of Concept) met en place une plateforme de données moderne pour analyser la préparation sportive (Trail/Vélotaf). L’objectif est d’automatiser l’extraction des données de l’API Strava vers un environnement Microsoft Fabric en suivant l’architecture Medallion, tout en intégrant une couche d’optimisation FinOps pour opérer sur une capacité minimale (F2).
Le projet permet un suivi précis de la charge d’entraînement (VAM, dénivelé) et une gestion prédictive de l’usure du matériel via une approche BI conversationnelle.
Le projet utilise une architecture Medallion pour garantir la qualité, la traçabilité et l’évolutivité des données.
Files/Bronze/Strava/).
Activities/ : Flux temporel des sorties (ingestion par batch).Gears/ : Snapshots quotidiens de l’état du matériel.stg_strava_activities, stg_strava_gears.fct_activities : Métriques transformées (VAM, Allure) et catégorisation métier (SportCategory).fct_gears : Journal d’usure permettant de tracer des courbes de tendance kilométrique.dim_gears : Référentiel matériel (Marque, Modèle, Nom, Statut).dim_calendar : Calendrier technique avec étiquettes de navigation et clés de tri numériques.Pour optimiser les coûts sur une capacité F2, une stratégie d’automatisation avancée a été mise en place :
Le modèle sémantique sert de Single Source of Truth. Les mesures DAX sont centralisées pour assurer la cohérence des KPIs.
SportCategory.| ID | Nom | Couche | Description |
|---|---|---|---|
| 01 | nb_strava_01_bronze |
Bronze | Gestion OAuth2, extraction activités et snapshots JSON. |
| 02 | nb_strava_02_silver_activities |
Silver | Nettoyage et typage du flux d’activités sportives. |
| 02 | nb_strava_02_silver_gears |
Silver | Unification des snapshots et historisation SCD Type 2. |
| 03 | nb_strava_03_gold_activities |
Gold | Calculs métiers (VAM), SportCategory et préparation Power BI. |
| 04 | nb_strava_04_gold_dim_calendar |
Gold | Génération du calendrier avec patterns ISO et clés de tri. |
| 05 | nb_runbook_control |
DevOps | (PowerShell) Script de management de la capacité Azure. |
\(VAM = \frac{\text{Elevation Gain (m)}}{\text{Moving Time (h)}}\)
df_with_categories = df_silver.withColumn(
"SportCategory",
F.when(F.col("SportType").isin("Run", "TrailRun"), "Running")
.when(F.col("SportType").isin("Ride", "EBikeRide", "VirtualRide"), "Cycling")
.otherwise("Others")
)
Auteur : Yoann BETTON - All Rights Reserved
Projet : POC Fabric Analytics & FinOps - 2026
© 2026 Yoann Betton