Video: What is Hadoop Yarn? | Hadoop Yarn Tutorial | Hadoop Yarn Architecture | COSO IT 2024
YARN, för dem som just anländer till den här parten står för ännu en resursförhandlare, ett verktyg som gör det möjligt för andra databehandlingsramar att köras på Hadoop. YARNs ära är att den presenterar Hadoop med en elegant lösning på ett antal långvariga utmaningar.
YARN är avsedd att tillhandahålla en effektivare och flexiblare arbetsbelastningsplanering samt en resurshanteringsanläggning, som båda kommer att göra det möjligt för Hadoop att springa mer än bara MapReduce-jobb.
Figuren visar i allmänhet hur GARN passar in i Hadoop och klargör också hur det har gjort det möjligt för Hadoop att bli en verkligt plattform för databehandling. Följande lista ger texterna till melodin:
-
Distribuerad lagring: Inget har ändrats här med skiftet från MapReduce till YARN - HDFS är fortfarande lagringsskiktet för Hadoop.
-
Resurshantering: Det centrala underliggande konceptet i övergången till YARN från Hadoop 1 är att koppla bort resurshanteringen från databehandling. Detta gör det möjligt för YARN att tillhandahålla resurser till alla bearbetningsramar som är skrivna för Hadoop, inklusive MapReduce.
-
Bearbetningsram: Eftersom YARN är en allmännyttig resurshanteringsanläggning, kan den allokera klusterresurser till alla databehandlingsramar som skrivits för Hadoop. Bearbetningsramen hanterar sedan program runtime-problem.
För att behålla kompatibiliteten för all kod som utvecklats för Hadoop 1, fungerar MapReduce som den första ram som är tillgänglig för användning på YARN. Vid tidpunkten för denna skrivelse var Apache Tez-projektet ett inkubatorprojekt i utveckling som en alternativ ram för genomförandet av Pig and Hive-applikationer. Tez kommer sannolikt att uppstå som en standard Hadoop-konfiguration.
-
Programmeringsgränssnitt (API): Med stöd för ytterligare bearbetningsramar kommer stöd för ytterligare API: er att komma. Vid tidpunkten för detta skrivande, är Apache Storm (för databehandling), Apache Giraph (för grafhantering), Open MPI (för meddelande som går i parallella system), i aktiv utveckling.