Contexte

  • Les audits de données efféctués en amont par Datalchemy ont validé la faisabilité d’exploiter les données de l’École 42 pour de l’analyse, du reporting et, à terme, du machine learning.
  • La première étape consiste à mettre en place une architecture de données permettant d’extraire de la production un sous-ensemble propre et contrôlé, sans impacter les systèmes en ligne, et d’y constituer un historique exploitable.
  • Le besoin prioritaire identifiée est la refonte des dashboards campus (remplacement des rapports Google existants), avec une deadline ambitieuse fixée à février 2024.

Enjeux

  • Volumes très importants (données collectées sur tous les campus dans le monde).
  • Historique limité : les sauvegardes écrasent les données précédentes.
  • Absence de validation et de contrôle sur les données archivées.

Objectifs du projet

  • Concevoir une architecture automatisée pour extraire les données de sources multiples.
  • Proposer un système simple pour définir et lancer de nouvelles extractions.
  • Tracer l’évolution des données dans le temps (versioning, horodatage).
  • Implémenter des mécanismes de contrôle et de validation des éléments extraits.
  • Faciliter la remontée et la gestion des erreurs détectées durant le pipeline.

Travail réalisé

  • Mise en place de buckets S3 dédiés :
    • pour les dumps avec rotation automatique des fichiers,
    • pour les données de workflow.
  • Création de dépôts DVC en production (avec gestion de branches alternatives) pour le versioning des jeux de données.
  • Déploiement d’une base PostgreSQL dédiée au suivi des workflows d’extraction.
  • Provisionnement d’un cluster Kubernetes avec
    • Namespace isolé
    • Orchestration des pipelines via Argo Workflows et Cron.

Résultats

  • Infrastructure opérationnelle prête à alimenter les nouveaux dashboards campus.
  • Pipeline reproductible et extensible pour d’autres cas d’usage (reporting, ML).
  • Traçabilité et contrôle des données garantis grâce au versioning DVC et aux logs de workflow.
  • Base solide pour déployer ultérieurement des analyses avancées et des modèles prédictifs.