Hadoop YARN Architecture - Olika komponenter i YARN

Innehållsförteckning:

Anonim

Introduktion till Hadoop YARN Architecture

MapReduce användes för att utföra både resurshantering och bearbetning i den tidigare Hadoop version 1.0. Här utförde Job Tracker resursallokering, schemaläggning och övervakning av jobb genom att tilldela kartor och reducera uppgifter till Task Tracker. Detta resulterade i problem som skalbarhet, ineffektivt resursutnyttjande. Eftersom Hadoop-ramverket har genomgått flera förändringar under åren; vi kan se att det kan användas för att utföra mycket mer än bara köra MapReduce-jobb. YARN står för Yet Another Resource Negotiator som kallas Haduster klusterhanteringssystem som infördes med Hadoop 2.0 för att stödja distribuerad datoranläggning som också förbättrar implementeringen av MapReduce. I YARN är resurshanteraren och schemaläggare externa för ramverket. Så i YARN även om vi har datanoder finns det inte längre Uppgiftsspårare eller Jobbspårare. Även med YARN kan vi ha resurshantering såväl som generisk schemaläggning. I det här ämnet kommer vi att lära oss om YARNs olika arkitektur

Förklara Hadoop YARN Architecture med diagram

(Arkitektur av Hadoop YARN)

YARN introducerar begreppet Resource Manager och en Application Master i Hadoop 2.0. Resurshanteraren ser användningen av resurserna över Hadoop-klustret medan livscykeln för applikationer som körs på ett visst kluster övervakas av Application Master. I grunden kan vi säga att för klusterresurser förhandlar Application Master med Resurshanteraren. Denna uppgift utförs av behållarna som har definitiva minnesbegränsningar. Sedan används dessa containrar för att köra de applikationsspecifika processerna och även dessa behållare övervakas av Node Managers som körs på noder i klustret. Detta bekräftar att inte mer än de tilldelade resurserna används av applikationen.

Olika komponenter i YARN

Nedan finns de olika komponenterna i YARN.

1) Resurschef

YARN fungerar genom en resurshanterare som är en per nod och Nodehanteraren som körs på alla noder. Resurshanteraren hanterar resurserna som används över klustret och Node Manager luncher och övervakar behållarna. Scheduler och Application Manager är två komponenter i Resource Manager.

  • Scheduler : Schemaläggning utförs baserat på kraven på resurser från applikationerna. YARN erbjuder några schemaläggare att välja mellan och de är rättvisa och kapacitetsplanerare. I händelse av maskinvaru- eller applikationsfel säkerställer schemaläggaren inte att starta om de misslyckade uppgifterna. Schemaläggare tilldelar också resurser till de löpande applikationerna baserat på kapacitet och kö.
  • Application Manager : Det hanterar körningen av Application Master i ett kluster och vid misslyckandet av Application Master Container hjälper det att starta om det. Dessutom bär det ansvaret att acceptera inlämningen av jobb.

2) Node Manager

Node Manager är ansvarig för utförandet av uppgiften i varje datanod. Nodehanteraren i YARN skickar som standard ett hjärtslag till Resurshanteraren som bär informationen om de löpande behållarna och om tillgången på resurser för de nya behållarna. Det ansvarar för att se till noderna i klustret individuellt och hanterar arbetsflödet och användarjobb på en specifik nod. I huvudsak hanterar de applikationsbehållare som tilldelas av resurshanteraren. Nodehanteraren startar behållarna genom att skapa behållarprocesser som begärs och den dödar också behållarna som frågade av Resurshanteraren.

3) Behållare

Behållarna är uppsatta resurser som RAM, CPU och Memory etc på en enda nod och de är schemalagda av Resource Manager och övervakas av Node Manager. Container Life Cycle hanterar YARN-containrarna genom att använda container-startkontext och ger åtkomst till applikationen för den specifika användningen av resurser i en viss värd.

4) Ansökan Master

Den övervakar utförandet av uppgifter och hanterar också livscykeln för applikationer som körs på klustret. En enskild ansökningsmästare blir associerad med ett jobb när det skickas till ramverket. Dess huvudansvar är att förhandla om resurshanteraren. Det fungerar med Node Manager för att övervaka och utföra uppgifterna.

För att köra en applikation genom YARN utförs nedanstående steg.

  • Klienten kontaktar resurshanteraren som begär att köra applikationsprocessen, dvs den skickar in YARN-applikationen.
  • Nästa steg är att Resurshanteraren söker efter en Nodehanterare som i sin tur kommer att starta Application Master i en behållare.
  • Application Master kan antingen köra exekveringen i behållaren där den körs för närvarande och ge resultatet till klienten eller så kan den begära fler containrar från resurshanteraren som kan kallas distribuerad datoranvändning.
  • Klienten kontaktar sedan Resurshanteraren för att övervaka applikationens status.

Med MapReduce i Hadoop version 1.0 (MRV1) definierades antalet kartor och reduceringsplatser per nod. Också i ett Hadoop-kluster, eftersom hårdvarufunktionerna varierade och antalet uppgifter på en specifik nod behövde manuellt begränsas. Men med YARN övervinns denna brist eftersom resurshanteraren här vet om kapaciteten för varje nod när den kommunicerar med Node Manager som körs på varje nod.

Slutsats - Hadoop YARN Architecture

YARN hjälper till att övervinna skalbarhetsproblemet i MapReduce i Hadoop 1.0 eftersom det delar upp jobbet för Job Tracker, både för jobbschemaläggning och övervakning av framstegen i uppgifterna. Frågan om tillgänglighet övervinns också eftersom tidigare i Hadoop 1.0 ledde Job Tracker-misslyckandet till omstart av uppgifterna. YARN kom med många extra bonusar som bättre resursutnyttjande eftersom det inte finns någon fast plats för uppgifter eftersom det ger central resurshantering. Så med YARN övervinns många av de problem som ställs inför den tidigare versionen av Hadoop eftersom det hjälper till att separera databehandlingen från schemaläggning och resurshantering. Med YARN är det möjligt att köra interaktiva frågor oberoende och ge bättre realtidsanalys.

Rekommenderade artiklar

Detta har varit en guide till Hadoop YARN Architecture. Här diskuterar vi de olika komponenterna i YARN som inkluderar Resource Manager, Node Manager och Containers tillsammans med Arkitekturen. Du kan också gå igenom våra andra föreslagna artiklar för att lära dig mer -

  1. Apache Hadoop ekosystem
  2. Hadoop ekosystemkomponenter
  3. Hadoop-komponenter
  4. Hadoop ekosystem