Comment lancer une application de MapReduce Hadoop en 1

Pour voir comment le JobTracker et TaskTracker travaillent ensemble pour mener une action de MapReduce, jetez un oeil à l'exécution d'une application de MapReduce. La figure montre les interactions, et la liste d'étape suivante énonce le play-by-play:

  1. L'application client soumet une demande de candidature à l'JobTracker.

  2. Le JobTracker détermine le nombre de ressources de traitement sont nécessaires pour exécuter l'application entière.

    Cela se fait en demandant les emplacements et les noms des fichiers et des blocs de données que l'application a besoin de la NameNode, et en calculant le nombre de tâches de carte et de réduire les tâches seront nécessaires pour traiter toutes ces données.




  3. Le JobTracker regarde l'état des nœuds esclaves et files d'attente toutes les tâches de carte et de réduire les tâches d'exécution.

  4. Comme fentes de traitement deviennent disponibles sur les nœuds esclaves, les tâches de carte sont déployés pour les nœuds esclaves.

    Carte de tâches assignées aux blocs de données spécifiques sont assignés à nœuds où ces mêmes données sont stockées.

  5. La tâche progrès surveille JobTracker, et dans le cas d'une défaillance de la tâche ou une défaillance de noeud, la tâche est redémarré sur le prochain emplacement disponible.

    Si la même tâche échoue après quatre tentatives (qui est une valeur par défaut et peut être personnalisé), l'ensemble du travail échouera.

  6. Après la carte tâches sont terminées, de limiter les tâches traiter le résultat provisoires ensembles des tâches de carte.

  7. Le jeu de résultats est renvoyé à l'application cliente.

    image0.jpg

Applications plus complexes peuvent avoir plusieurs tours de map / reduce phases, où le résultat d'un tour est utilisé comme entrée pour le second tour. Cela est très courant aux charges de travail SQL-style, où il ya, par exemple, et rejoindre un groupe par les opérations.


» » » » Comment lancer une application de MapReduce Hadoop en 1