apache hadoop yarn tutorial
Hadoop-componenten - MapReduce met Hadoop YARN:
In onze vorige tutorial over de Hadoop-component hebben we geleerd over Hadoop MapReduce en zijn verwerkingsmechanisme zoals INPUT, SPLITTING, MAPPING, SHUFFLING, REDUCING en FINAL RESULT.
In deze tutorial onderzoeken we:
- Hoe werkt Map Reduce met YARN?
- Applicatieworkflow van Hadoop YARN.
Bekijk hier de BigData-beginnershandleiding.
Wat je leert:
Kaart verkleinen met Hadoop YARN
Laten we eens kijken hoe MapReduce YARN gebruikt om de taken over het Hadoop-cluster uit te voeren. Maar voordat we verder gaan, is de eerste die vraag bij ons opkomt wat is de volledige vorm van YARN? Of waar staat YARN voor?
GAREN middelen Nog een andere onderhandelaar over middelen.
Het is degene die de middelen toewijst voor verschillende taken die moeten worden uitgevoerd via het Hadoop-cluster. Het werd geïntroduceerd in Hadoop 2.0.
Till Hadoop 1.0 was MapReduce het enige framework of de enige verwerkingseenheid die via het Hadoop-cluster kan worden uitgevoerd. In Hadoop 2.0 is YARN echter geïntroduceerd en daarmee kunnen we ook verder gaan dan MapReduce.
Zoals je in het diagram kunt zien, hebben we HDFS onderaan, we hebben YARN en gebruiken YARN, veel frameworks kunnen verbinding maken en HDFS gebruiken. Dus zelfs MapReduce wordt gebruikt om verbinding te maken met YARN voor het aanvragen van de bronnen en alleen dan kan het de taak uitvoeren via HDFS, d.w.z. Hadoop Cluster.
Evenzo; SPARK, STORM en andere zoekmachines kunnen verbinding maken met HDFS. HBase, dat een No SQL-database is, kan er ook verbinding mee maken. Dus de toepassingen van HDFS werden enorm, alleen omdat YARN de Gate ook voor andere frameworks en andere Bigdata-analysetools kon openen.
Wat is het verschil tussen MapReduce Version1 (MRv1) en MapReduce Version2 (MRv2)?
MRv1 was in wezen een onderdeel van het Hadoop-framework 1 en met Hadoop 2 kwam YARN in beeld en MapReduce werd geüpgraded naar MRv2 met verschillende klassenwijzigingen. De klassen zijn bijgewerkt, maar de syntaxis van het schrijven van het MapReduce-programma blijft hetzelfde.
In dit scenario maakt MapReduce nu verbinding met YARN om de HDFS te assen.
Samen met YARN zijn Resource Manager en Node Manager de nieuwe Daemons die in het Hadoop-cluster zijn geïntroduceerd.
Voorheen was het de Job Tracker en de Task Tracker. Ze werden echter verwijderd uit Hadoop 2.0 en Resource Manager & Node Manager werden samen met YARN geïntroduceerd in het Hadoop-framework.
Hadoop 2.x Daemons
Laten we eens kijken naar de nieuw geïntroduceerde Daemons in Hadoop 2.0 die de componenten uitvoeren, d.w.z. opslag en verwerking.
etl testen interviewvragen en antwoorden pdf
In de HDFS-zelfstudie hebben we de Daemon, d.w.z. NameNode en DataNode, in detail begrepen. In deze tutorial zullen we begrijpen hoe Resource Manager en Node Manager werken in Hadoop 2.x Cluster om de verwerking en taken te beheren die moeten worden uitgevoerd in het Hadoop Cluster.
Dus, wat is de Resource Manager? Resource Manager is de Master Daemons die op de Master Machine draait of de NameNode die een high-end machine is. Node Manager daarentegen is de Daemon die op Slave Machines of de DataNodes of samen met het DataNode-proces draait.
Hadoop 2.x MapReduce YARN-componenten
Laten we de andere componenten van YARN hieronder bekijken.
- Cliënt: Het is een eenheid die de Job-like Command Line Interface (CLI) indient, en de Client zou een JAVA-applicatie kunnen zijn.
- Bronbeheer: Het is een Master Daemon waaraan alle opdrachten van de klant worden verzonden, en het is degene die alle bronnen op clusterniveau toewijst voor het uitvoeren van een bepaalde opdracht. Het draait op een high-end machine met hardware van goede kwaliteit en een goede configuratie, aangezien het de Master Machine is die alles in het cluster moet beheren.
- Node Manager : Het is een Slave Daemon die op de Slave Machines of de DataNode draait, dus elke Slave Machine heeft een Node Manager die draait. Het controleert de bronnen van bepaalde DataNode, Resource Manager beheert de clusterbronnen en Node Manager beheert de DataNode-bronnen.
- Taakgeschiedenis-server: Het is de eenheid om alle Jobs bij te houden die via de Cluster zijn uitgevoerd of aan de Cluster zijn verzonden. Het houdt ook de status bij en houdt ook de logbestanden bij van elke uitvoering die via het Hadoop-cluster is gebeurd.
- Applicatie Master : Het is een component die wordt uitgevoerd via Node Machine, Slave Machine en is gemaakt door een Resource Manager om een taak uit te voeren en te beheren. Het is degene die onderhandelt over de bronnen van de Resource Manager en uiteindelijk coördineert met de Node Manager om de taak uit te voeren.
- Container: Het wordt gemaakt door de Node Manager zelf die is toegewezen door de Resource Manager en alle taken worden uiteindelijk uitgevoerd in de container.
GAREN-workflow
Zoals weergegeven in het bovenstaande diagram, is er een Bronbeheer waaraan alle Jobs worden verzonden en er is een Cluster met Slave Machines, en op elke Slave Machine is er een Node Manager rennen.
Bronbeheer heeft twee componenten, d.w.z. Scheduler en Applicatie Manager.
Wat is het verschil tussen Application Master en Application Manager?
Applicatie Manager is een onderdeel van Bronbeheer die ervoor zorgt dat elke taak wordt uitgevoerd en een Applicatie Master is ervoor gemaakt. Toepassingsmeester, aan de andere kant, is iemand die de taak uitvoert en vraagt om alle middelen die nodig zijn om te worden uitgevoerd.
Stel dat de taak is ingediend bij de Bronbeheer , zodra de taak is verzonden, wordt het Scheduler plant de taak. Zodra het Scheduler plant de uit te voeren taak de Applicatie Manager zal een Container in een van de DataNodes , en daarbinnen Container, de Applicatie Master zal worden gestart.
Deze Applicatie Master registreert zich dan bij de Bronbeheer en verzoek om een Container om de taak uit te voeren. Zo snel als de Container wordt toegewezen, de Applicatie Master wordt nu verbonden met de Node Manager en verzoek om het Container
Zoals we kunnen zien, is de Applicatie Master werd toegewezen aan Gegevensknooppunten D en IS , en nu dit Applicatie Master verzocht het Node Manager om het Containers van DataNode D en DataNode E
Zo snel als de Containers werden gelanceerd, de Applicatie Master voert de taak uit binnen het Container en het resultaat wordt teruggestuurd naar de Cliënt
Toepassingsstroom
Laten we dit op een kleine opeenvolgende manier begrijpen.
In het onderstaande diagram hebben we vier componenten. De eerste is de Cliënt, de tweede is Bronbeheer , de derde is Node Manager en de vierde regel bevat Applicatie Master
Laten we dus eens kijken hoe deze stappen tussen hen worden uitgevoerd.
De allereerste stap is de Cliënt wie de taak indient bij de Bronbeheer , in de tweede stap het Bronbeheer wijst een Container om het Applicatie Master op de Slavenmachines de derde stap is de Applicatie Master registreert zich bij de Bronbeheer
Zodra het zich registreert, vraagt het het Container om de taak uit te voeren, d.w.z. de vierde stap. In stap vijf is het Applicatie Master meldt het Node Manager waarop de Container moet worden gelanceerd.
In stap zes, zodra het Node Manager heeft het Containers, de Applicatie Master zal de code hierin uitvoeren Containers
Ten slotte, in de zevende stap, de Cliënt neemt contact op met de Bronbeheer of de Applicatie Master om de applicatiestatus te bewaken.
Uiteindelijk is het Applicatie Master zal zichzelf uitschrijven van het Bronbeheer en het resultaat wordt teruggegeven aan de Cliënt Dit is dus een eenvoudige opeenvolgende stroom van hoe een MapReduce-programma wordt uitgevoerd met behulp van het YARN-framework.
Gevolgtrekking
Dus in deze tutorial hebben we de volgende tips geleerd:
- GAREN middelen Nog een andere onderhandelaar over middelen.
- YARN is geïntroduceerd in Hadoop 2.0
- Resource Manager en Node Manager werden samen met YARN geïntroduceerd in het Hadoop-framework.
- YARN-componenten zoals Client, Resource Manager, Node Manager, Job History Server, Application Master en Container.
In de komende tutorial zullen we de testtechnieken van BigData en de uitdagingen bij BigData Testing bespreken. We zullen ook leren hoe we die uitdagingen kunnen overwinnen en hoe we manieren kunnen omzeilen om BigData Testing gemakkelijk te maken.
Bezoek hier om BigData van Scratch te leren.
Aanbevolen literatuur
- Wat is Hadoop? Apache Hadoop-zelfstudie voor beginners
- 20+ MongoDB-zelfstudie voor beginners: gratis MongoDB-cursus
- Diepgaande Eclipse-zelfstudies voor beginners
- Python-zelfstudie voor beginners (hands-on GRATIS Python-training)
- Big data-zelfstudie voor beginners | Wat zijn big data?
- LoadRunner-zelfstudie voor beginners (gratis 8-daagse diepgaande cursus)
- Hadoop MapReduce-zelfstudie met voorbeelden | Wat is MapReduce?
- Beste GRATIS C # Tutorial-serie: de ultieme C # -gids voor beginners