Skip to content

Kafka-Spark-DeltaLake-ML Architecture Update - #105

Open
Elasfer-Abdellah wants to merge 14 commits into
FinanceLake:mainfrom
Elasfer-Abdellah:main
Open

Kafka-Spark-DeltaLake-ML Architecture Update#105
Elasfer-Abdellah wants to merge 14 commits into
FinanceLake:mainfrom
Elasfer-Abdellah:main

Conversation

@Elasfer-Abdellah

@Elasfer-Abdellah Elasfer-Abdellah commented Jan 23, 2026

Copy link
Copy Markdown
Contributor

Pull Request — Kafka-Spark-DeltaLake-ML Architecture Update

Résumé

Cette PR rassemble les fichiers ajoutés pour le projet FinanceLake : code d'orchestration, producteur Kafka, consommateurs Spark/Delta et la documentation d'architecture. Elle facilite la revue des composants principaux mis en place pour le pipeline Kafka → Spark → Delta Lake → ML.

Fichiers ajoutés / modifiés

Motivation

  • Centraliser l'implémentation minimale d'une preuve de concept pour l'ingestion (Kafka), le traitement (Spark → Delta) et le composant ML.
  • Fournir la documentation d'architecture et un schéma visuel pour faciliter la revue et la mise en place de l'environnement.

Changements clés

  • producer.py : producteur Kafka utilisé pour simuler les flux de données.
  • spark_delta_consumer.py : consommateur Spark qui lit depuis Kafka et écrit vers Delta Lake.
  • SparkMLlib_trainer_and_predicter.py : script d'entrainement/prédiction ML basé sur Spark MLlib.
  • app.py et app_control_v0.py : scripts d'orchestration/contrôle pour exécuter et superviser les composants locaux.
  • FinanceLake_Architecture.md et l'image associée : documentation et diagramme d'architecture.

Comment tester

  1. Vérifier les dépendances listées dans requirements.txt.
  2. Démarrer Kafka (ou utiliser l'instance de développement fournie) et exécuter producer.py pour injecter des messages.
  3. Lancer spark_delta_consumer.py pour consommer et persister les données dans Delta.
  4. Lancer SparkMLlib_trainer_and_predicter.py pour valider l'entraînement/prédiction sur les données persistées.

Exemples de commandes rapides (en local/dev) :

python3 producer.py
python3 spark_delta_consumer.py
python3 SparkMLlib_trainer_and_predicter.py

Impact / Risques

  • Scripts Python préliminaires — attention aux dépendances Spark/Kafka en environnement CI.
  • Fichiers volumineux (images, vidéos) sont ajoutés dans resources/ — vérifier la taille du dépôt si nécessaire.

Checklist pour la revue

  • Valider la clarté et l'exactitude de FinanceLake_Architecture.md.
  • Vérifier que les scripts ne contiennent pas d'informations sensibles (clés, mots de passe).
  • Tester le flux end-to-end en environnement de développement.
  • Ajouter des tests unitaires/integ si possible pour producer.py et le consumer Spark.

Réalisation par

@pr-elhajji

Copy link
Copy Markdown
Contributor

Thanks for the contribution! Looking through this, it seems some of the Figma requirements weren't fully met. Let’s sync up to make sure we’re on the same page, or feel free to take another pass at it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants