apache hadoop yarn tutorial
Composants Hadoop - MapReduce avec Hadoop YARN:
Dans notre didacticiel précédent sur le composant Hadoop, nous avons découvert Hadoop MapReduce et son mécanisme de traitement comme INPUT, SPLITTING, MAPPING, SHUFFLING, REDUCING et FINAL RESULT.
Dans ce tutoriel, nous explorerons:
- Comment Map Reduce fonctionne-t-il avec YARN?
- Flux de travail d'application de Hadoop YARN.
=> Jetez un œil au guide du débutant BigData ici.
Ce que vous apprendrez:
Réduire la carte avec Hadoop YARN
Voyons comment MapReduce utilise YARN pour exécuter les tâches sur le cluster Hadoop. Mais avant de continuer, la première question qui nous vient à l'esprit est quelle est la forme complète de YARN? Ou que signifie YARN?
FIL veux dire Encore un autre négociateur de ressources.
C'est celui qui alloue les ressources pour divers travaux qui doivent être exécutés sur le cluster Hadoop. Il a été introduit dans Hadoop 2.0.
Till Hadoop 1.0 MapReduce était le seul framework ou la seule unité de traitement capable de s'exécuter sur le cluster Hadoop. Cependant, dans Hadoop 2.0 YARN a été introduit et en utilisant cela, nous pouvons également aller au-delà de MapReduce.
Comme vous pouvez le voir dans le diagramme, nous avons HDFS en bas entre les deux, nous avons YARN et en utilisant YARN, de nombreux frameworks sont capables de se connecter et d'utiliser HDFS. Ainsi, même MapReduce est utilisé pour se connecter à l'aide de YARN pour demander les ressources et alors seulement il peut exécuter le travail sur HDFS, c'est-à-dire Hadoop Cluster.
De même; SPARK, STORM et d'autres moteurs de recherche peuvent se connecter à HDFS. HBase qui est une base de données No SQL peut également la connecter. Les applications de HDFS sont donc devenues énormes, simplement parce que YARN a pu ouvrir la porte à d'autres frameworks et à d'autres outils d'analyse Bigdata.
Quelle est la différence entre MapReduce Version1 (MRv1) et MapReduce Version2 (MRv2)?
MRv1 faisait essentiellement partie du framework Hadoop 1 et avec Hadoop 2 YARN est entré en scène et MapReduce a été mis à niveau vers MRv2 avec plusieurs changements de classes. Les classes ont été mises à jour, cependant, la syntaxe d'écriture du programme MapReduce reste la même.
Dans ce scénario, MapReduce se connecte désormais à YARN pour orienter le HDFS.
Avec YARN, Resource Manager et Node Manager sont les nouveaux démons qui ont été introduits dans le cluster Hadoop.
Auparavant, c'était le Job Tracker et le Task Tracker. Cependant, ils ont été supprimés de Hadoop 2.0, et Resource Manager & Node Manager ont été introduits avec YARN dans le framework Hadoop.
Démons Hadoop 2.x
Jetons un coup d'œil aux nouveaux démons introduits dans Hadoop 2.0 qui exécutent les composants, à savoir le stockage et le traitement.
comment écrire des cas de test en qa
Dans le didacticiel HDFS, nous avons compris le démon, c'est-à-dire NameNode et DataNode en détail. Dans ce didacticiel, nous allons comprendre comment Resource Manager et Node Manager fonctionnent dans Hadoop 2.x Cluster pour gérer le traitement et les travaux qui doivent être exécutés dans le Hadoop Cluster.
Alors, qu'est-ce que le gestionnaire de ressources? Resource Manager est le Master Daemons qui s'exécute sur la machine maître ou le NameNode qui est une machine haut de gamme. Node Manager, en revanche, est le démon qui s'exécute sur les machines esclaves ou les DataNodes ou avec le processus DataNode.
Composants Hadoop 2.x MapReduce YARN
Explorons ci-dessous les autres composants de YARN.
- Client: C'est une unité qui soumet l'interface de ligne de commande (CLI) de type Job, et le client peut être une application JAVA.
- Gestionnaire de ressources: C'est un démon maître auquel tous les Jobs sont soumis depuis le client, et c'est celui qui alloue toutes les ressources au niveau du cluster pour exécuter un Job particulier. Il fonctionne sur une machine haut de gamme dotée d'un matériel de bonne qualité et d'une bonne configuration, car c'est la machine maître qui doit tout gérer sur le cluster.
- Gestionnaire de nœuds : Il s'agit d'un démon esclave qui s'exécute sur les machines esclaves ou le DataNode, donc chaque machine esclave a un gestionnaire de nœuds en cours d'exécution. Il surveille les ressources d'un DataNode particulier, Resource Manager gère les ressources du cluster et Node Manager gère les ressources DataNode.
- Serveur d'historique des travaux: C'est l'unité pour garder une trace de tous les Jobs qui ont été exécutés sur le cluster ou qui ont été soumis au cluster. Il assure également le suivi de l'état et conserve les fichiers journaux de chaque exécution sur le cluster Hadoop.
- Maître d'application : C'est un composant qui est exécuté sur Node Machine, Slave Machine et est créé par un Resource Manager pour exécuter et gérer un Job. C'est celui qui négocie les ressources du gestionnaire de ressources et enfin se coordonne avec le gestionnaire de nœuds pour exécuter la tâche.
- Récipient: Il est créé par le Node Manager lui-même qui a été alloué par le Resource Manager et tous les Jobs sont finalement exécutés dans le Container.
Flux de travail YARN
Comme le montre le diagramme ci-dessus, il y a un Gestionnaire de ressources auquel tous les Jobs sont soumis et il y a un cluster dans lequel il y a des machines esclaves, et sur chaque machine esclave, il y a un Gestionnaire de nœuds fonctionnement.
Gestionnaire de ressources a deux composants i.e. Planificateur et Gestionnaire d'applications.
Quelle est la différence entre Application Master et Application Manager?
Gestionnaire d'applications est un composant de Gestionnaire de ressources qui garantit que chaque tâche est exécutée et un Maître d'application est créé pour cela. Maître d'application, d'autre part, est quelqu'un qui exécute la tâche et demande toutes les ressources qui doivent être exécutées.
Supposons que le travail soit soumis à Gestionnaire de ressources , dès que le travail est soumis, le Planificateur planifie le Job. Une fois la Planificateur planifie le Job à exécuter le Gestionnaire d'applications créera un Récipient dans l'un des DataNodes , et dans ce Récipient, la Maître d'application sera démarré.
Cette Maître d'application s'inscrira alors auprès du Gestionnaire de ressources et demander un Récipient pour exécuter la tâche. Aussi tôt que le Récipient est alloué, le Maître d'application sera maintenant connecté avec le Gestionnaire de nœuds et demander de lancer le Récipient .
Comme nous pouvons le voir, le Maître d'application a été attribué à DataNodes D et EST , et maintenant ceci Maître d'application demandé le Gestionnaire de nœuds pour lancer le Conteneurs de DataNode D et DataNode E .
Aussi tôt que le Conteneurs ont été lancés, le Maître d'application exécutera la tâche dans le Récipient et le résultat sera renvoyé au Client .
Flux d'application
Comprenons cela de manière un peu séquentielle.
Dans le diagramme ci-dessous, nous avons quatre composants. Le premier est le Client, le second est Gestionnaire de ressources , le troisième est Gestionnaire de nœuds et la quatrième ligne contient Maître d'application .
Voyons donc comment ces étapes sont exécutées entre elles.
La toute première étape est la Client qui soumet le Job au Gestionnaire de ressources , dans la deuxième étape, le Gestionnaire de ressources attribue un Récipient pour démarrer le Maître d'application sur le Machines esclaves ; la troisième étape est la Maître d'application s'inscrit auprès du Gestionnaire de ressources .
Dès son enregistrement, il demande le Récipient pour exécuter la tâche, c'est-à-dire la quatrième étape. À l'étape cinq, le Maître d'application avise le Gestionnaire de nœuds sur lequel le Récipient doit être lancé.
À l'étape six, une fois Gestionnaire de nœuds a lancé le Conteneurs, la Maître d'application exécutera le code dans ces Conteneurs .
Enfin, à la septième étape, le Client contacte le Gestionnaire de ressources ou la Maître d'application pour surveiller l'état de l'application.
En fin de compte, le Maître d'application va se désinscrire de la Gestionnaire de ressources et le résultat est rendu au Client . Il s'agit donc d'un simple flux séquentiel de la façon dont un programme MapReduce est exécuté à l'aide du framework YARN.
Conclusion
Ainsi, dans ce tutoriel, nous avons appris les pointeurs suivants:
- FIL veux dire Encore un autre négociateur de ressources.
- YARN a été introduit dans Hadoop 2.0
- Resource Manager et Node Manager ont été introduits avec YARN dans le framework Hadoop.
- Composants YARN tels que Client, Resource Manager, Node Manager, Job History Server, Application Master et Container.
Dans le prochain didacticiel, nous discuterons des techniques de test de BigData et des défis rencontrés dans le test de BigData. Nous apprendrons également à surmonter ces défis et les moyens de contournement pour faciliter les tests BigData.
=> Visitez ici pour apprendre BigData à partir de zéro.
lecture recommandée
- Qu'est-ce que Hadoop? Tutoriel Apache Hadoop pour les débutants
- 20+ Tutoriel MongoDB pour les débutants: Cours MongoDB gratuit
- Tutoriels Eclipse détaillés pour les débutants
- Tutoriel Python pour les débutants (formation pratique gratuite sur Python)
- Tutoriel Big Data pour les débutants | Qu'est-ce que le Big Data?
- Tutoriel LoadRunner pour les débutants (cours approfondi gratuit de 8 jours)
- Tutoriel Hadoop MapReduce avec des exemples | Qu'est-ce que MapReduce?
- Meilleure série de tutoriels C # GRATUITS: Le guide ultime de C # pour les débutants