Le framework Apache Hadoop

MapReduce

 




Qu'est ce que MapReduce ?

La notion de MapReduce, issue à l'origine de la programmation fonctionnelle, peut désigner plusieurs choses :

Ici, nous allons nous concentrer sur le fonctionnement de ce modèle de programmation, implémenté dans le cadre d'Hadoop.

Fonctionnement de MapReduce


Fonctionnement de l'exécution d'une tâche MapReduce


Une tâche MapReduce a pour objectif de produire des résultats en sortie à partir d'une source de données en entrée et ce, de manière distribuée.

Pour cela, deux fonctions sont exécutées afin d'effectuer un traitement sur les données :

Dans la cadre de l'architecture que nous avons vu précédemment, le JobTracker va répartir les fonctions map à exécuter sur les machines esclaves (TaskTracker) et exécuter la fonction reduce qui permettra de produire le résultat de la tâche.

Hadoop fournit une abstraction de l'exécution de tâches distribuées au travers de son système de fichiers HDFS, que nous allons voir dans la partie suivante.