Pendant qu'un job Spark tourne → ouvre localhost:4040
Le Spark UI te montre :
✅ Jobs en cours
✅ Stages et tasks par partition
✅ Les shuffles coûteux
✅ Les partitions déséquilibrées
Indispensable pour optimiser 🔍
#Spark#SparkUI#DataEngineering#dezoomcamp
Piège classique PySpark sur WSL2 :
FileNotFoundError: /opt/spark/bin/spark-submit
Cause : SPARK_HOME pointait vers un dossier vide.
Fix : unset SPARK_HOME
PySpark installé via pip/uv est standalone.
Java suffit ✅
#PySpark#WSL2#DataEngineering#dezoomcamp
En PySpark, tout tourne autour de 2 types d'opérations :
🔵 Transformations (lazy) → filter, groupBy, join, withColumn
🔴 Actions (déclenchent l'exécution) → show, count, write
Pas d'action = pas de calcul. Simple mais essentiel.
#PySpark#Spark#dezoomcamp
Le concept le plus important de Spark :
Lazy Evaluation ⚡
Tu écris 10 transformations → rien ne se passe.
Tu appelles .show() → Spark exécute TOUT d'un coup.
Pourquoi ? Il optimise le plan global avant de lancer.
#PySpark#DataEngineering#dezoomcamp
500 Go de données ? pandas plante. PostgreSQL rame.
Apache Spark découpe les données en partitions,
distribue sur N workers, agrège les résultats. 🔥
Ce qui prend 3h sur une machine → 10 min sur un cluster.
#Spark#DataEngineering#dezoomcamp
⚡ Module 06 du Data Engineering Zoomcamp terminé !
Batch Processing avec Apache Spark 🔥
6 modules validés. Plus qu'un avant le projet final 💪
#DataEngineering#Spark#PySpark#dezoomcamp
⏱️ 1 pipeline complet NYC Taxi → DuckDB en 1h (1 pomodoro 50mn) !
Avec un agent IA comme nakama :
✅ Debug instantané
✅ Explications en temps réel
✅ Focus sur la logique, pas la syntax
L'avenir du data engineering c'est Humain + Agent 🚀
#dezoomcamp#dlt#ai
🤖 Nouveauté 2026 : le workshop dlt intègre le MCP Server (Model Context Protocol) pour du développement AI-assisted.
Utiliser un agent IA comme copilote data engineer, c'est pas tricher — c'est travailler intelligemment 💡
#dezoomcamp#dlt#aiagents#dataengineering
📊 Rappel SQL du jour :
Pour calculer des % par groupe :
COUNT(*) * 100.0 / SUM(COUNT(*)) OVER ()
OVER() vide = window sur TOUTES les lignes
Sans ça, impossible de calculer des ratios relatifs !
Les window functions = arme secrète du data engineer 🔑
#dezoomcamp
🦆 DuckDB comme destination locale, c'est underrated !
Requêtes SQL analytiques ultra rapides sur les données NYC Taxi :
→ MIN/MAX des dates
→ Pourcentages par payment_type
→ Total des tips
Parfait pour prototyper avant BigQuery 🎯
#dezoomcamp#duckdb#dataengineering
🔍 Avant de lancer un pipeline, on teste toujours l'API !
1000 records/page, 18 colonnes, données 2009 NYC Taxi 🚕
Status 200 ✅ Structure validée ✅
Un bon data engineer valide sa source avant d'ingérer.
#dezoomcamp#dlt#dataengineering
Parti de zéro sur Bruin ce matin
Ce soir : pipeline NYC Taxi complète en local, quality checks, déduplication SQL, notes de module + homework ✅
Le module 05 est dans la boîte 🔥
#DEZoomcamp#LearningInPublic
La stratégie time_interval dans Bruin :
1. DELETE les lignes dans la fenêtre de dates
2. INSERT le résultat de ta query
Sans filter {{ start_datetime }} dans ta query = doublons garantis 💀
Détail qui change tout 📌
#DEZoomcamp#DataEngineering
Pipeline NYC Taxi complète en local avec Bruin ✅
Ingestion → Staging → Reports
Chaque couche a son rôle. La déduplication se gère en staging, pas en ingestion.
C'est ça l'architecture ELT propre 🏗️
#DEZoomcamp
Aujourd'hui j'ai appris que dlopen() failed = librairie système manquante
Réflexe : ls -la <chemin> pour vérifier si le fichier existe vraiment
Simple mais ça sauve du temps en DE 🔍
#DEZoomcamp#DataEngineering
Le stack data classique c'est : Fivetran + dbt + Great Expectations + Airflow Quand ça casse tu cherches dans 4 dashboards différents 😅 Bruin remplace tout ça avec un seul outil.
#DEZoomcamp#DataEngineering
Futur plans
🚀 La suite :
→ Pipeline data pour un acteur local → SQL quotidien → Explorer les agents IA → Développer l'écosystème data/IA à La Réunion via ReunIA
Data engineering + IA = l'avenir 🔥
#DEZoomcamp#DataEngineering