SlideShare une entreprise Scribd logo
Mme Ines Slimene
Ines_slimene@yahoo.fr
https://inesslimene.wixsite.com/moncours Mapreduce 2
 MapReduce1
 Fonctionnement
 Exemple
 Composants de MapReduce
 Limites de MPR1
 Nouveautés Hadoop2
 Yarn
 Gestion des ressources
Plan
https://inesslimene.wixsite.com/moncours Mapreduce 3
 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
https://inesslimene.wixsite.com/moncours Mapreduce 4
 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
https://inesslimene.wixsite.com/moncours Mapreduce 5
 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: Fonctionnement
https://inesslimene.wixsite.com/moncours Mapreduce 6
 But : Calculer le nombre d’occurrences des mots constituant le texte.
 L’ensemble du processus est schématisé ci-dessous
Map-Reduce: Exemple
https://inesslimene.wixsite.com/moncours Mapreduce 7
 Deux processus JobTracker et TaskTracker
MapReduce
https://inesslimene.wixsite.com/moncours Mapreduce 8
 JobTracker
 Planifie les taches,
 Affecte les tâches aux TaskTrackers.
 Gère les jobs MapReduce et surveille les progrès réalisés
 Récupère les erreurs, et redémarre les tâches lentes et les taches qui
ont échoué
 TaskTracker
 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.
 S’exécute sur chacun des nœuds pour exécuter les vraies tâches de
MapeReduce
 Choisit en général de traiter (Map ou Reduce) un bloc sur la même
machine que lui
MapReduce
https://inesslimene.wixsite.com/moncours Mapreduce 9
 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
Gestion des ressources
https://inesslimene.wixsite.com/moncours Mapreduce 10
 Scalabilité limitée : Le JobTracker s’exécute sur une seule machine.
Ses rôles sont :
 Gestion des ressources
 Ordonnancement et suivi des Job
 Problème de disponibilité : Le JobTracker est un SPOF. S’il est
endommagé, tous les jobs doivent être redémarrés
 Problème d’utilisation des ressources : Il y a un nombre prédéfini de
map slots et reduce slots pour chaque TaskTrackers.
 Utilisation des applications non-MapReduce : Le JobTracker est
intégré à MapReduce et ne supporte que les applications utilisant le
framework de programmation MapReduce
Limites de MPR1
https://inesslimene.wixsite.com/moncours Mapreduce 11
 YARN – Possibilité de traitement de Terabytes et Petabytes de données
existants dans HDFS en utilisant des application Non-MapReduce
 Resource Manager – Séparation des deux fonctionnalités essentielles
du jobtracker (gestion des ressources et ordonnancement et suivi des
jobs) en deux composants séparés :
 Gestionnaire de Resource
 Gestionnaire d’application
Jobtracker et Tascktracker
n’existent plus.
Nouveautés Hadoop 2
https://inesslimene.wixsite.com/moncours Mapreduce 12
 YARN sépare la gestion des ressources/ordonnancement des job du
traitement des données. Permettant a Hadoop de supporter d’autre
applications de traitement de données.
 Par exemple, Hadoop peut maintenant exécuter des requêtes
interactives et des flot de données simultanément avec des jobs
mapreduce.
YARN
https://inesslimene.wixsite.com/moncours Mapreduce 13
 La nouvelle génération du framework MapReduce est une application
qui s’exécute avec Yarn.
 Le nouveau framework MRv2 divise les deux fonctions majeurs du
JobTracker, en gestion des ressources et ordonnancement/suivi des jobs
avec des composants séparés.
Gestion des ressources
https://inesslimene.wixsite.com/moncours Mapreduce 14
 Resource Manager (RM)
 Tourne sur le nœud master
 Ordonnanceur de ressources global
 Permet l’arbitrage des ressources entre plusieurs applications
 Node Manager (NM)
 S’exécute sur les nœuds esclaves
 Communique avec RM
 Containers
 Créés par RM à la demande
 Se voit allouer des ressources sur le nœud esclave
 Application Master (AM)
 Un seul par application
 S’exécute sur un container
 Demande plusieurs containers pour exécuter les tâches de l’application
Gestion des ressources
https://inesslimene.wixsite.com/moncours Mapreduce 15
Exécution d’un job
Data.txt
blk1
blk2
$ hadoop jar app.jar data.txt output
MR application
master
Demande ressources:
DN1 / 1GB / 1 core
DN2 / 1GB / 1 core
Affectation
containers
Tache map
Tache map
Tache
reduce
Tache
reduce
https://inesslimene.wixsite.com/moncours Mapreduce 16
 Task (Container) : L’application Master essaye de re-exécuter la tache.
Si au bout de 4 tentatives aucune réponse, la tache est considérée
comme failed.
 Application Master : si AM n’envois plus de heartbeat, RM essayera de
re-exécuter la totalité de l’application (2tentatives)
Si la valeur de l’option Job recovery du AppMaster est false, toutes les
taches seront re-exécutées. Sinon, l’AppMaster reprend l’état des taches
lors du démarrage et re-exécute les taches incomplètes
 NodeManager : si les NM n’envoient plus de heartbeats au RM, il sera
supprimé de la liste des nœuds. Les taches seront considérées comme
failed par l’AppMaster.
 ResourceManager : aucune application ni tache ne peut être exécutée si
le RM est non fonctionnel. (possibilité d’avoir un Resource Manager
active et un Resource Manager (standby)
Fault Tolerance

Contenu connexe

Similaire à Mapreduce

10 big data hadoop
10 big data hadoop10 big data hadoop
10 big data hadoop
Patrick Bury
 
10 big data hadoop
10 big data hadoop10 big data hadoop
10 big data hadoop
Patrick Bury
 
Spark
SparkSpark
Chapitre 3 spark
Chapitre 3 sparkChapitre 3 spark
Chapitre 3 spark
Mouna Torjmen
 
BigData_TP3 : Spark
BigData_TP3 : SparkBigData_TP3 : Spark
BigData_TP3 : Spark
Lilia Sfaxi
 
Parallélisation d'algorithmes de graphes avec MapReduce sur un cluster d'ordi...
Parallélisation d'algorithmes de graphes avec MapReduce sur un cluster d'ordi...Parallélisation d'algorithmes de graphes avec MapReduce sur un cluster d'ordi...
Parallélisation d'algorithmes de graphes avec MapReduce sur un cluster d'ordi...
Hadjer BENHADJ DJILALI
 
BigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans HadoopBigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans Hadoop
Lilia Sfaxi
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)
IJERD Editor
 
Presentation des outils traitements distribues
Presentation des outils traitements distribuesPresentation des outils traitements distribues
Presentation des outils traitements distribues
Lê Anh
 
Cours Big Data Chap4 - Spark
Cours Big Data Chap4 - SparkCours Big Data Chap4 - Spark
Cours Big Data Chap4 - Spark
Amal Abid
 
Paris RailsCamp 2009
Paris RailsCamp 2009Paris RailsCamp 2009
Paris RailsCamp 2009
Olivier Gutknecht
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)
IJERD Editor
 
Spark docker
Spark dockerSpark docker
Spark docker
Lê Anh
 
Présentation Hadoop SECURINETS INSAT (MAP & REDUCE )
Présentation Hadoop SECURINETS INSAT (MAP & REDUCE )Présentation Hadoop SECURINETS INSAT (MAP & REDUCE )
Présentation Hadoop SECURINETS INSAT (MAP & REDUCE )
Hamza Ben Marzouk
 
Chapitre 2 hadoop
Chapitre 2 hadoopChapitre 2 hadoop
Chapitre 2 hadoop
Mouna Torjmen
 
Introduction à Rmpi
Introduction à RmpiIntroduction à Rmpi
Introduction à Rmpiparisraddicts
 
Casablanca Hadoop & Big Data Meetup - Introduction à Hadoop
Casablanca Hadoop & Big Data Meetup - Introduction à HadoopCasablanca Hadoop & Big Data Meetup - Introduction à Hadoop
Casablanca Hadoop & Big Data Meetup - Introduction à Hadoop
Benoît de CHATEAUVIEUX
 
Paris ember js lab #6 - Taking over server-side rendering websites
Paris ember js lab #6 - Taking over server-side rendering websitesParis ember js lab #6 - Taking over server-side rendering websites
Paris ember js lab #6 - Taking over server-side rendering websites
Guillaume Gérard
 
Checklist pour concevoir une application dans le cloud.10 conseils à l'attent...
Checklist pour concevoir une application dans le cloud.10 conseils à l'attent...Checklist pour concevoir une application dans le cloud.10 conseils à l'attent...
Checklist pour concevoir une application dans le cloud.10 conseils à l'attent...
Alexandre Touret
 

Similaire à Mapreduce (20)

10 big data hadoop
10 big data hadoop10 big data hadoop
10 big data hadoop
 
10 big data hadoop
10 big data hadoop10 big data hadoop
10 big data hadoop
 
Spark
SparkSpark
Spark
 
Chapitre 3 spark
Chapitre 3 sparkChapitre 3 spark
Chapitre 3 spark
 
BigData_TP3 : Spark
BigData_TP3 : SparkBigData_TP3 : Spark
BigData_TP3 : Spark
 
Parallélisation d'algorithmes de graphes avec MapReduce sur un cluster d'ordi...
Parallélisation d'algorithmes de graphes avec MapReduce sur un cluster d'ordi...Parallélisation d'algorithmes de graphes avec MapReduce sur un cluster d'ordi...
Parallélisation d'algorithmes de graphes avec MapReduce sur un cluster d'ordi...
 
BigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans HadoopBigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans Hadoop
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)
 
Presentation des outils traitements distribues
Presentation des outils traitements distribuesPresentation des outils traitements distribues
Presentation des outils traitements distribues
 
Cours Big Data Chap4 - Spark
Cours Big Data Chap4 - SparkCours Big Data Chap4 - Spark
Cours Big Data Chap4 - Spark
 
Cours s epart2
Cours s epart2Cours s epart2
Cours s epart2
 
Paris RailsCamp 2009
Paris RailsCamp 2009Paris RailsCamp 2009
Paris RailsCamp 2009
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)
 
Spark docker
Spark dockerSpark docker
Spark docker
 
Présentation Hadoop SECURINETS INSAT (MAP & REDUCE )
Présentation Hadoop SECURINETS INSAT (MAP & REDUCE )Présentation Hadoop SECURINETS INSAT (MAP & REDUCE )
Présentation Hadoop SECURINETS INSAT (MAP & REDUCE )
 
Chapitre 2 hadoop
Chapitre 2 hadoopChapitre 2 hadoop
Chapitre 2 hadoop
 
Introduction à Rmpi
Introduction à RmpiIntroduction à Rmpi
Introduction à Rmpi
 
Casablanca Hadoop & Big Data Meetup - Introduction à Hadoop
Casablanca Hadoop & Big Data Meetup - Introduction à HadoopCasablanca Hadoop & Big Data Meetup - Introduction à Hadoop
Casablanca Hadoop & Big Data Meetup - Introduction à Hadoop
 
Paris ember js lab #6 - Taking over server-side rendering websites
Paris ember js lab #6 - Taking over server-side rendering websitesParis ember js lab #6 - Taking over server-side rendering websites
Paris ember js lab #6 - Taking over server-side rendering websites
 
Checklist pour concevoir une application dans le cloud.10 conseils à l'attent...
Checklist pour concevoir une application dans le cloud.10 conseils à l'attent...Checklist pour concevoir une application dans le cloud.10 conseils à l'attent...
Checklist pour concevoir une application dans le cloud.10 conseils à l'attent...
 

Plus de Ines Slimene

Redis
RedisRedis
Crud
CrudCrud
Cassandra
CassandraCassandra
Cassandra
Ines Slimene
 
Agregation
AgregationAgregation
Agregation
Ines Slimene
 
Pig
PigPig
Neo4j
Neo4jNeo4j
Introduction nosql
Introduction nosqlIntroduction nosql
Introduction nosql
Ines Slimene
 
Introduction
IntroductionIntroduction
Introduction
Ines Slimene
 
Intro mongodb
Intro mongodbIntro mongodb
Intro mongodb
Ines Slimene
 
Hive
HiveHive
Hdfs
HdfsHdfs
Hbase
HbaseHbase
Hadoop
HadoopHadoop
Hadoop
Ines Slimene
 
Indexation
IndexationIndexation
Indexation
Ines Slimene
 

Plus de Ines Slimene (14)

Redis
RedisRedis
Redis
 
Crud
CrudCrud
Crud
 
Cassandra
CassandraCassandra
Cassandra
 
Agregation
AgregationAgregation
Agregation
 
Pig
PigPig
Pig
 
Neo4j
Neo4jNeo4j
Neo4j
 
Introduction nosql
Introduction nosqlIntroduction nosql
Introduction nosql
 
Introduction
IntroductionIntroduction
Introduction
 
Intro mongodb
Intro mongodbIntro mongodb
Intro mongodb
 
Hive
HiveHive
Hive
 
Hdfs
HdfsHdfs
Hdfs
 
Hbase
HbaseHbase
Hbase
 
Hadoop
HadoopHadoop
Hadoop
 
Indexation
IndexationIndexation
Indexation
 

Dernier

M2i Webinar - « Participation Financière Obligatoire » et CPF : une opportuni...
M2i Webinar - « Participation Financière Obligatoire » et CPF : une opportuni...M2i Webinar - « Participation Financière Obligatoire » et CPF : une opportuni...
M2i Webinar - « Participation Financière Obligatoire » et CPF : une opportuni...
M2i Formation
 
Evaluación docentes "Un cielo, dos países: El camino de los descubrimientos"
Evaluación docentes "Un cielo, dos países: El camino de los descubrimientos"Evaluación docentes "Un cielo, dos países: El camino de los descubrimientos"
Evaluación docentes "Un cielo, dos países: El camino de los descubrimientos"
IES Turina/Rodrigo/Itaca/Palomeras
 
Exame DELF - A2 Francês pout tout public
Exame DELF - A2  Francês pout tout publicExame DELF - A2  Francês pout tout public
Exame DELF - A2 Francês pout tout public
GiselaAlves15
 
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
cristionobedi
 
SYLLABUS DU COURS MARKETING DTS 1-2.pdf
SYLLABUS DU COURS  MARKETING DTS 1-2.pdfSYLLABUS DU COURS  MARKETING DTS 1-2.pdf
SYLLABUS DU COURS MARKETING DTS 1-2.pdf
Moukagni Evrard
 
Mémoire de licence en finance comptabilité et audit
Mémoire de licence en finance comptabilité et auditMémoire de licence en finance comptabilité et audit
Mémoire de licence en finance comptabilité et audit
MelDjobo
 
Calendrier du 3 juin 2024 et compte rendu.pdf
Calendrier du 3 juin 2024 et compte rendu.pdfCalendrier du 3 juin 2024 et compte rendu.pdf
Calendrier du 3 juin 2024 et compte rendu.pdf
frizzole
 
Edito-B1-francais Manuel to learning.pdf
Edito-B1-francais Manuel to learning.pdfEdito-B1-francais Manuel to learning.pdf
Edito-B1-francais Manuel to learning.pdf
WarlockeTamagafk
 
Contrôle fiscale en république de guinée
Contrôle fiscale en république de guinéeContrôle fiscale en république de guinée
Contrôle fiscale en république de guinée
bangalykaba146
 
Newsletter SPW Agriculture en province du Luxembourg du 03-06-24
Newsletter SPW Agriculture en province du Luxembourg du 03-06-24Newsletter SPW Agriculture en province du Luxembourg du 03-06-24
Newsletter SPW Agriculture en province du Luxembourg du 03-06-24
BenotGeorges3
 
Iris et les hommes.pptx
Iris      et         les      hommes.pptxIris      et         les      hommes.pptx
Iris et les hommes.pptx
Txaruka
 
Cours de conjugaison des verbes du premier, deuxième et troisième groupe
Cours de conjugaison des verbes du premier, deuxième et troisième groupeCours de conjugaison des verbes du premier, deuxième et troisième groupe
Cours de conjugaison des verbes du premier, deuxième et troisième groupe
Yuma91
 
Système de gestion des fichiers de amine
Système de gestion des fichiers de amineSystème de gestion des fichiers de amine
Système de gestion des fichiers de amine
sewawillis
 
Impact des Critères Environnementaux, Sociaux et de Gouvernance (ESG) sur les...
Impact des Critères Environnementaux, Sociaux et de Gouvernance (ESG) sur les...Impact des Critères Environnementaux, Sociaux et de Gouvernance (ESG) sur les...
Impact des Critères Environnementaux, Sociaux et de Gouvernance (ESG) sur les...
mrelmejri
 
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La JeunesseConseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
Oscar Smith
 

Dernier (15)

M2i Webinar - « Participation Financière Obligatoire » et CPF : une opportuni...
M2i Webinar - « Participation Financière Obligatoire » et CPF : une opportuni...M2i Webinar - « Participation Financière Obligatoire » et CPF : une opportuni...
M2i Webinar - « Participation Financière Obligatoire » et CPF : une opportuni...
 
Evaluación docentes "Un cielo, dos países: El camino de los descubrimientos"
Evaluación docentes "Un cielo, dos países: El camino de los descubrimientos"Evaluación docentes "Un cielo, dos países: El camino de los descubrimientos"
Evaluación docentes "Un cielo, dos países: El camino de los descubrimientos"
 
Exame DELF - A2 Francês pout tout public
Exame DELF - A2  Francês pout tout publicExame DELF - A2  Francês pout tout public
Exame DELF - A2 Francês pout tout public
 
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
 
SYLLABUS DU COURS MARKETING DTS 1-2.pdf
SYLLABUS DU COURS  MARKETING DTS 1-2.pdfSYLLABUS DU COURS  MARKETING DTS 1-2.pdf
SYLLABUS DU COURS MARKETING DTS 1-2.pdf
 
Mémoire de licence en finance comptabilité et audit
Mémoire de licence en finance comptabilité et auditMémoire de licence en finance comptabilité et audit
Mémoire de licence en finance comptabilité et audit
 
Calendrier du 3 juin 2024 et compte rendu.pdf
Calendrier du 3 juin 2024 et compte rendu.pdfCalendrier du 3 juin 2024 et compte rendu.pdf
Calendrier du 3 juin 2024 et compte rendu.pdf
 
Edito-B1-francais Manuel to learning.pdf
Edito-B1-francais Manuel to learning.pdfEdito-B1-francais Manuel to learning.pdf
Edito-B1-francais Manuel to learning.pdf
 
Contrôle fiscale en république de guinée
Contrôle fiscale en république de guinéeContrôle fiscale en république de guinée
Contrôle fiscale en république de guinée
 
Newsletter SPW Agriculture en province du Luxembourg du 03-06-24
Newsletter SPW Agriculture en province du Luxembourg du 03-06-24Newsletter SPW Agriculture en province du Luxembourg du 03-06-24
Newsletter SPW Agriculture en province du Luxembourg du 03-06-24
 
Iris et les hommes.pptx
Iris      et         les      hommes.pptxIris      et         les      hommes.pptx
Iris et les hommes.pptx
 
Cours de conjugaison des verbes du premier, deuxième et troisième groupe
Cours de conjugaison des verbes du premier, deuxième et troisième groupeCours de conjugaison des verbes du premier, deuxième et troisième groupe
Cours de conjugaison des verbes du premier, deuxième et troisième groupe
 
Système de gestion des fichiers de amine
Système de gestion des fichiers de amineSystème de gestion des fichiers de amine
Système de gestion des fichiers de amine
 
Impact des Critères Environnementaux, Sociaux et de Gouvernance (ESG) sur les...
Impact des Critères Environnementaux, Sociaux et de Gouvernance (ESG) sur les...Impact des Critères Environnementaux, Sociaux et de Gouvernance (ESG) sur les...
Impact des Critères Environnementaux, Sociaux et de Gouvernance (ESG) sur les...
 
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La JeunesseConseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
 

Mapreduce

  • 2. https://inesslimene.wixsite.com/moncours Mapreduce 2  MapReduce1  Fonctionnement  Exemple  Composants de MapReduce  Limites de MPR1  Nouveautés Hadoop2  Yarn  Gestion des ressources Plan
  • 3. https://inesslimene.wixsite.com/moncours Mapreduce 3  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
  • 4. https://inesslimene.wixsite.com/moncours Mapreduce 4  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
  • 5. https://inesslimene.wixsite.com/moncours Mapreduce 5  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: Fonctionnement
  • 6. https://inesslimene.wixsite.com/moncours Mapreduce 6  But : Calculer le nombre d’occurrences des mots constituant le texte.  L’ensemble du processus est schématisé ci-dessous Map-Reduce: Exemple
  • 7. https://inesslimene.wixsite.com/moncours Mapreduce 7  Deux processus JobTracker et TaskTracker MapReduce
  • 8. https://inesslimene.wixsite.com/moncours Mapreduce 8  JobTracker  Planifie les taches,  Affecte les tâches aux TaskTrackers.  Gère les jobs MapReduce et surveille les progrès réalisés  Récupère les erreurs, et redémarre les tâches lentes et les taches qui ont échoué  TaskTracker  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.  S’exécute sur chacun des nœuds pour exécuter les vraies tâches de MapeReduce  Choisit en général de traiter (Map ou Reduce) un bloc sur la même machine que lui MapReduce
  • 9. https://inesslimene.wixsite.com/moncours Mapreduce 9  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 Gestion des ressources
  • 10. https://inesslimene.wixsite.com/moncours Mapreduce 10  Scalabilité limitée : Le JobTracker s’exécute sur une seule machine. Ses rôles sont :  Gestion des ressources  Ordonnancement et suivi des Job  Problème de disponibilité : Le JobTracker est un SPOF. S’il est endommagé, tous les jobs doivent être redémarrés  Problème d’utilisation des ressources : Il y a un nombre prédéfini de map slots et reduce slots pour chaque TaskTrackers.  Utilisation des applications non-MapReduce : Le JobTracker est intégré à MapReduce et ne supporte que les applications utilisant le framework de programmation MapReduce Limites de MPR1
  • 11. https://inesslimene.wixsite.com/moncours Mapreduce 11  YARN – Possibilité de traitement de Terabytes et Petabytes de données existants dans HDFS en utilisant des application Non-MapReduce  Resource Manager – Séparation des deux fonctionnalités essentielles du jobtracker (gestion des ressources et ordonnancement et suivi des jobs) en deux composants séparés :  Gestionnaire de Resource  Gestionnaire d’application Jobtracker et Tascktracker n’existent plus. Nouveautés Hadoop 2
  • 12. https://inesslimene.wixsite.com/moncours Mapreduce 12  YARN sépare la gestion des ressources/ordonnancement des job du traitement des données. Permettant a Hadoop de supporter d’autre applications de traitement de données.  Par exemple, Hadoop peut maintenant exécuter des requêtes interactives et des flot de données simultanément avec des jobs mapreduce. YARN
  • 13. https://inesslimene.wixsite.com/moncours Mapreduce 13  La nouvelle génération du framework MapReduce est une application qui s’exécute avec Yarn.  Le nouveau framework MRv2 divise les deux fonctions majeurs du JobTracker, en gestion des ressources et ordonnancement/suivi des jobs avec des composants séparés. Gestion des ressources
  • 14. https://inesslimene.wixsite.com/moncours Mapreduce 14  Resource Manager (RM)  Tourne sur le nœud master  Ordonnanceur de ressources global  Permet l’arbitrage des ressources entre plusieurs applications  Node Manager (NM)  S’exécute sur les nœuds esclaves  Communique avec RM  Containers  Créés par RM à la demande  Se voit allouer des ressources sur le nœud esclave  Application Master (AM)  Un seul par application  S’exécute sur un container  Demande plusieurs containers pour exécuter les tâches de l’application Gestion des ressources
  • 15. https://inesslimene.wixsite.com/moncours Mapreduce 15 Exécution d’un job Data.txt blk1 blk2 $ hadoop jar app.jar data.txt output MR application master Demande ressources: DN1 / 1GB / 1 core DN2 / 1GB / 1 core Affectation containers Tache map Tache map Tache reduce Tache reduce
  • 16. https://inesslimene.wixsite.com/moncours Mapreduce 16  Task (Container) : L’application Master essaye de re-exécuter la tache. Si au bout de 4 tentatives aucune réponse, la tache est considérée comme failed.  Application Master : si AM n’envois plus de heartbeat, RM essayera de re-exécuter la totalité de l’application (2tentatives) Si la valeur de l’option Job recovery du AppMaster est false, toutes les taches seront re-exécutées. Sinon, l’AppMaster reprend l’état des taches lors du démarrage et re-exécute les taches incomplètes  NodeManager : si les NM n’envoient plus de heartbeats au RM, il sera supprimé de la liste des nœuds. Les taches seront considérées comme failed par l’AppMaster.  ResourceManager : aucune application ni tache ne peut être exécutée si le RM est non fonctionnel. (possibilité d’avoir un Resource Manager active et un Resource Manager (standby) Fault Tolerance