0% ont trouvé ce document utile (0 vote)
4 vues11 pages

Introduction au modèle Map-Reduce

Map-Reduce est un modèle d'architecture pour le traitement parallèle et distribué de grandes quantités de données, utilisant des langages comme Java, Python ou Ruby. Il se compose de deux étapes principales : le mappage, qui analyse les données brutes, et la réduction, qui extrait les informations clés. Apache Spark, bien que similaire, est plus rapide et est souvent utilisé en complément de Map-Reduce pour des traitements en temps réel.

Transféré par

idoudihania8
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PPTX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
4 vues11 pages

Introduction au modèle Map-Reduce

Map-Reduce est un modèle d'architecture pour le traitement parallèle et distribué de grandes quantités de données, utilisant des langages comme Java, Python ou Ruby. Il se compose de deux étapes principales : le mappage, qui analyse les données brutes, et la réduction, qui extrait les informations clés. Apache Spark, bien que similaire, est plus rapide et est souvent utilisé en complément de Map-Reduce pour des traitements en temps réel.

Transféré par

idoudihania8
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PPTX, PDF, TXT ou lisez en ligne sur Scribd

Map-Reduce

ENSEIGNANTE RESPONSABLE :NOUISSER AICHA


Map-Reduce

 Patron d’architecture de développement


 Permet de traiter des données volumineuses de manière parallèle et
distribuée
 Les langages utilisés : Java, Python ou Ruby
 Au lieu de parcourir le fichier séquentiellement (beaucoup de temps), il
est divisé en morceaux qui sont parcourus en parallèle.
Map-Reduce

 Ce modèle se base sur 2 étapes :


 Mapping (map tasks) : le développeur définit une fonction de mappage
dont le but sera d'analyser les données brutes contenues dans les
fichiers stockés sur HDFS pour en sortir les données correctement
formatées.
 Réduction (reduce tasks) : cette tâche récupère les données
construites dans l'étape du mappage et s'occupe de les analyser dans
le but d'en extraire les informations les plus importantes.
Map-Reduce: Fonctionnement

 Les Mappers sont de petits programmes qui commencent par traiter


chacun une petite partie des données
 Ils fonctionnent en parallèle
 Leurs sorties représentent les enregistrements intermédiaires : sous
forme d’un couple (clef, valeur)
 Une étape de Mélange et Tri s’ensuit
• Mélange : Sélection des piles de fiches à partir des Mappers
• Tri: Rangement des piles par ordre au niveau de chaque Reducer
 Chaque Reducer traite un ensemble d’enregistrements à la fois, pour
générer les résultats finaux
Map-Reduce:
MapReduce

 Deux processus JobTracker et TaskTracker


MapReduce

 JobTracker
o Planifie les taches,
o Affecte les tâches aux TaskTrackers.
o Gère les jobs MapReduce et surveille les progrès réalisés
o Récupère les erreurs, et redémarre les tâches lentes et les taches qui
ont échoué

 TaskTracker
o Notifie périodiquement le JobTracker du niveau de progression
d’une tâche ou bien le notifie en cas d’erreur afin que celui-ci
puisse reprogrammer et assigner une nouvelle tâche
o S’exécute sur chacun des nœuds pour exécuter les vraies tâches de
MapeReduce
o Choisit en général de traiter (Map ou Reduce) un bloc sur la même
machine que lui
Gestion des ressources

 MapReduce a un modèle de gestion de mémoire inflexible basé sur les


slot.
 Chaque TaskTracker est configuré au démarrage pour avoir un nombre
bien déterminé de slots (map slot, reduce slot) pour l’exécution des
tâches
 Une tache est exécutée dans un seul slot
 Les slots sont configurés au démarrage pour avoir un maximum
d’espace mémoire
MapReduce

Planification /Scheduling – FIFO scheduler (avec priorités)


 Les travaux MapReduce sont programmés pour s'exécuter dans l'ordre
où ils ont été mis en file d'attente, du premier au dernier, et compte
tenu de la priorité de la file d'attente.
 Il existe cinq files d'attente prioritaires: très bas, bas, normal, élevé,
très élevé tente.
 Les travaux dans la file d'attente de priorité très élevée sont exécutés
avant les travaux dans la file d'attente de priorité élevée, etc.
SPARK

 Apache SPARK est un paradigme similaire à MAP-REDUCE


 La phase SHUFFLE de SPARK est totalement en mémoire sans aucun
accès HDFS
 Apache Spark est nettement plus rapide que MAP-REDUCE !!
 Les développeurs de Spark expliquent que le produit peut exécuter des
tâches 100 fois plus vite que MapReduce en cas de traitement en
mémoire, et 10 fois plus vite sur disque.
Complémentarité SPARK /
MapReduce

 MAP REDUCE est destiné pour le traitement par lots


 alors que SPARK est mieux pour un composant en temps réel
 Ils sont complémentaires et généralement utilisés ensemble

Vous aimerez peut-être aussi