Vidéo: Machine Learning sur Hadoop : concepts et outils 2024
Contrairement à d'autres composants YARN (Yet Another Resource Negotiator), aucun composant de Hadoop 1 ne correspond directement au Maître d'application. Essentiellement, c'est un travail que le JobTracker a fait pour chaque application, mais la mise en œuvre est radicalement différente.
Chaque application exécutée sur le cluster Hadoop possède sa propre instance Application Master dédiée, qui s'exécute réellement dans un processus conteneur sur un nœud esclave (par rapport à JobTracker, qui était un démon unique exécuté sur un nœud maître et suivi le progrès de toutes les applications).
Pendant toute sa durée de vie (par exemple, lorsque l'application est en cours d'exécution), le maître d'application envoie des messages de pulsation au gestionnaire de ressources avec son statut et l'état des besoins en ressources de l'application. Sur la base des résultats de la planification du gestionnaire de ressources, il attribue des contrats de location de conteneurs - essentiellement des réservations pour les conteneurs de ressources - au maître d'application sur des nœuds esclaves spécifiques.
Le maître d'application supervise le cycle de vie complet d'une application, depuis la demande des conteneurs nécessaires depuis le gestionnaire de ressources jusqu'à la soumission des demandes de bail de conteneur au NodeManager.
Chaque structure d'application écrite pour Hadoop doit avoir sa propre implémentation Application Master. MapReduce, par exemple, dispose d'un maître d'application spécifique conçu pour exécuter des tâches cartographiques et réduire les tâches en séquence.