DATA ENGINEERING

Vélib Data Platform

Une plateforme Data Engineering capable d'ingérer, stocker, transformer et analyser des données Vélib provenant de flux temps réel et de données historiques.

PythonKafkaSparkAirflowMinIOMongoDBDuckDBDocker

LE PROJET

Une plateforme capable de gérer plusieurs types de flux.

L'objectif était de construire une plateforme complète autour des données Vélib, depuis leur ingestion jusqu'à leur exploitation analytique.

Le projet combine deux approches complémentaires : l'ingestion de données historiques et un flux de données temps réel basé sur Kafka.

ARCHITECTURE

Streaming, batch et traitement distribué.

Les données Vélib transitent par deux chemins d'ingestion avant d'être orchestrées et transformées par Spark.

DATA PLATFORMSTREAM + BATCH
SOURCEVélib APISTREAMINGRedpandaBATCHHistoriqueRAWMinIOStream + BatchORCHESTRATIONAirflowPROCESSINGSparkCURATEDMinIOParquetANALYTICSMongoDBSOURCEVélib APISTREAMINGRedpandaBATCHHistoriqueRAWMinIOStream + BatchORCHESTRATIONAirflowPROCESSINGSparkCURATEDMinIOParquetANALYTICSMongoDB

STREAMING

Des données Vélib qui arrivent en continu.

01Vélib API

Récupération des données de stations.

→
02Producer

Publication des événements.

→
03Redpanda

Transport du flux Kafka.

→
04Consumer

Écriture des données brutes dans MinIO.

BATCH PROCESSING

Les données historiques suivent un autre chemin.

01Données historiques
02MinIO Raw
03Airflow
04Spark
05MinIO Curated

ORCHESTRATION

Airflow coordonne les traitements.

L'infrastructure est démarrée par Docker Compose tandis qu'Airflow orchestre les différentes étapes du pipeline Data Engineering.

Ingestion
↓
Spark Cleaning
↓
Spark Analysis

STACK

Les briques de la plateforme.

Kafka / Redpanda

Ingestion et transport des flux temps réel.

Apache Spark

Nettoyage et traitement distribué des données.

Apache Airflow

Orchestration des pipelines.

MinIO

Data Lake compatible S3 avec stockage Parquet.

MongoDB

Stockage des données destinées à l'analytics.

Docker

Conteneurisation et gestion de l'infrastructure.

← Retour aux projets
↑