ProjetsComplémentaire
NYC Taxi Orchestration with Kestra
ETL Kestra planifié : CSV TLC mensuels vers PostgreSQL, COPY en staging puis MERGE.
Vue d'ensemble
Flux Kestra (postgres_taxi_scheduled, namespace zoomcamp) : téléchargement du mois TLC choisi, PostgreSQL COPY vers une table de staging, clé MD5 déterministe, puis MERGE vers yellow_tripdata ou green_tripdata. Docker Compose lance Kestra, son stockage de métadonnées, PostgreSQL et pgAdmin. Module orchestration du Zoomcamp.
Interface


Problème
Les fichiers mensuels doivent arriver dans PostgreSQL sans dupliquer un mois relancé, et les schémas yellow / green diffèrent.
Solution technique
Les entrées choisissent le type de taxi et la période YYYY-MM, ce qui rend les exécutions manuelles et planifiées déterministes. Les branches créent les tables typées, utilisent COPY vers staging, puis MERGE sur unique_row_id. Une exécution yellow de janvier 2021 a été revérifiée avec succès sur Kestra 1.1.20 et a chargé 7 774 773 lignes dans PostgreSQL.
Ce que contient le dépôt
- Serveur Kestra standalone, métadonnées Postgres
- COPY staging + MERGE sans doublons
- DDL yellow et green séparés
- Déclencheurs cron mensuels et label backfill
- pgAdmin sur le port 8085, base ny_taxi
- Exécution janvier 2021 vérifiée : SUCCESS, 7 774 773 lignes yellow