2014.03.19.

nagyadatblog

YARN

a.k.a. MapReduce 2.0, MRv2

Az Apache Hadoop YARN egy Hadoop alprojekt, amit a 2.x-s Hadoop verzióban emeltek a Core szolgáltatások közé. Röviden: a YARN segítségével szétválaszthatóvá váltak a MapReduce erőforrás-menedzsment és adatfeldolgozási funkciói.

Az alprojektet az az igény hívta életre, hogy a Hadoop egyre növekvő számú felhasználói szükségesnek tartották, hogy minél szélesebb körű alkalmazásokkal lehessen a HDFS-ben tárolt adatokat elérni, ez ne korlátozódjon kizárólag a MapReduce-ra. Egy vállalat számára, amikor az adatok elérhetővé válnak a HDFS-ben, fontos, hogy különböző módokon lehessen a tárolt adatokat feldolgozni.

A MapReduce továbbfejlesztésének alapköve a JobTracker/TaskTracker két fő funkcionalitásának, az erőforrás menedzsment valamint a feladat ütemezés és monitorozás szétválasztása volt. Az ötlet arról szólt, hogy fusson egy (klaszter szintű) globális erőforrásmenedzser (ResourceManager), valamint működjenek alkalmazásonként több node-on is futó Container-ek, melyek közül egy kiemelt jelentőséggel bír, az ApplicationMaster. (Ebben a megfogalmazásban egy alkalmazás lehet egy MapReduce megközelítésben értelmezett egyszerű job, vagy több job összefüggő rendszert alkalmazó halmaza is.)

yarn_architecture.gif

A ResourceManager és a node-okon futó NodeManager alkotja az adatfeldolgozó keretrendszert, amiben a ResourceManager a végső erőforrás-szabályozó egység, ami biztosítja az optimális erőforráselosztást a klaszter alkalmazásai között. 

Az alkalmazás-szintű ApplicationMaster a valóságban a ResourceManager és NodeManager deamon-okkal működik együtt, erőforrást igényel a ResourceManager-től, és utasítja a NodeManagert-t a szükséges feladatok végrehajtására, egyúttal felügyeli azok végrehajtását.

A ResourceManager két fő eleme az ütemező (Scheduler) és az alkalmazásmenedzser (ApplicationsManager) funkciókat megvalósító komponensek.

A Scheduler felelős az erőforrásallokációért a különböző futó alkalmazások számára. Tisztán ütemező feladatot lát el abból a szempontból, hogy nem rendelkezik monitoring funkcióval, így nem követi az alkalmazások státuszát. Nem garantálja az alkalmazási vagy hardver hibák miatt hibára futott feladatok újraindulását. A Scheduler az ütemezési feladatát kizárólag az egyes alkalmazások erőforrásszükségletei alapján végzi.

Az ApplicationManager felelős a job-ok fogadásáért, az alkalmazás-specifikus ApplicationMaster-t futtató node kijelöléséért, hiba esetén annak újraindításáért.

A NodeManager egy olyan keretalkalmazás, ami minden node-on fut, és saját hardver erőforrás-kihasználtságának monitorozásáért felel, amit folyamatosan riportál a ResourceManager-nek is.

A YARN így egy generikus keretrendszert biztosít a HDFS-ben tárolt adatokhoz való hozzáféréshez, amit az alkalmazás-fejlesztők API-n keresztül tudnak elérni.

A YARN-ról, egészen jól összeszedve, részletesebb információ elérhető a Hortonworks csapat blogján is.

(via & via)

-->

Címkék: apache hadoop yarn MapReduce hortonworks MRv2

A bejegyzés trackback címe:

https://nagyadat.blog.hu/api/trackback/id/tr565852903

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.
süti beállítások módosítása