Bevezetés a Hadoop YARN architektúrába
A MapReduce-t mind a korábbi Hadoop 1.0-s verzióban az erőforrás-menedzsment, mind a feldolgozás elvégzésére használták. Itt a Job Tracker erőforrás-elosztást, ütemezést és figyelési feladatokat hajtott végre, hozzárendelve a térkép- és feladatcsökkentési feladatokat a Feladatkövetőhöz. Ez olyan kérdéseket eredményezett, mint a skálázhatóság és az erőforrások nem hatékony felhasználása. Mivel a Hadoop keretrendszere az évek során számos változáson ment keresztül; láthatjuk, hogy sokkal többet lehet felhasználni, mint hogy csak a MapReduce feladatokat futtassa. A YARN az Yet Another Resource Negotiator kifejezést jelenti, amelyet Hadoop fürtkezelő rendszerének hívnak, amelyet a Hadoop 2.0-val vezettek be az elosztott számítástechnika támogatására, ami szintén javítja a MapReduce megvalósítását. A YARN alkalmazásban az erőforrás-kezelő és az ütemezők kívül esnek a keretrendszeren. Tehát a YARN-ban, bár vannak adatcsomópontjai, a továbbiakban nem léteznek feladatkövető vagy feladatkövető. A YARN-rel is rendelkezhetünk erőforrás-kezeléssel és általános műszaki ütemezéssel. Ebben a témában megismerjük a YARN különféle architektúráit
Magyarázza el a Hadoop YARN architektúráját a diagrammal
(A Hadoop YARN építészete)
A YARN bevezeti az erőforrás-kezelő és az alkalmazás-mester fogalmát a Hadoop 2.0-ban. Az erőforrás-kezelő látja az erőforrások felhasználását a Hadoop fürtön, míg az adott fürtön futó alkalmazások életciklusát az Application Master felügyeli. Alapvetően azt mondhatjuk, hogy a fürt erőforrások esetében az Application Master tárgyal az erőforrás-kezelővel. Ezt a feladatot a meghatározott memóriakorlátozással rendelkező konténerek hajtják végre. Ezután ezeket a tárolókat az alkalmazás-specifikus folyamatok futtatásához használják, és ezeket a tárolókat a fürt csomópontjain futó csomópontkezelők is felügyelik. Ez megerősíti, hogy az alkalmazás csak a kiosztott erőforrásokat használja fel.
A fonal különféle alkotóelemei
Az alábbiakban bemutatjuk a YARN különféle alkotóelemeit.
1) Erőforrás menedzser
A YARN erőforrás-kezelőn keresztül működik, amely csomópontonként egy, és Node Manager, amely az összes csomóponton fut. Az erőforrás-kezelő kezeli a fürtön használt erőforrásokat, a Node Manager pedig ebédet készít és figyeli a tárolókat. Az Ütemező és az Alkalmazáskezelő a Resource Manager két összetevője.
- Ütemező : Az ütemezést az alkalmazások erőforrás-igénye alapján hajtják végre. A YARN néhány ütemezőt kínál, amelyek közül választhat, és ezek Fair és Capacity Scheduler. Hardver vagy alkalmazáshiba esetén az Ütemező nem biztosítja a sikertelen feladatok újraindítását. Az Ütemező az erőforrásokat a kapacitás és a sor alapján osztja fel a futó alkalmazásokra.
- Application Manager : Az Application Master futtatását kezeli egy fürtben, és az Application Master Container meghibásodása esetén segít az újraindításban. Ezenkívül felelõsséget vállal a munkák benyújtásának elfogadása is.
2) Csomópontkezelő
A Node Manager felel a feladat végrehajtásáért minden adatcsomópontban. A YARN-ban található Node Manager alapértelmezés szerint szívverést küld az erőforrás-kezelőhöz, amely a futó tárolókkal kapcsolatos információkat és az új tárolók erőforrás-rendelkezésre állását tartalmazza. Feladata a fürt csomópontjainak külön-külön történő megfigyelése, és kezeli a munkafolyamatot és a felhasználói feladatokat egy adott csomóponton. Főként az erőforrás-kezelő által kiosztott alkalmazás tárolókat kezeli. A Node Manager elindítja a tárolókat a kért tárolófolyamatok létrehozásával, és a Resource Manager kérésére megöli a tárolókat.
3) Konténerek
A tárolókat erőforrások halmaza, például RAM, CPU, memória stb., Egyetlen csomóponton, és ezeket az erőforrás-kezelő ütemezi, és a Node Manager felügyeli. A tároló életciklusa a YARN-tárolókat a tároló-indítási környezet felhasználásával kezeli, és hozzáférést biztosít az erőforrások egy adott gazdagépben történő felhasználásához szükséges alkalmazáshoz.
4) Application Master
Figyelemmel kíséri a feladatok végrehajtását, és kezeli a fürtön futó alkalmazások életciklusát is. Az egyéni Application Master összekapcsolódik egy munkával, amikor azt a keretbe beküldik. Fő felelőssége az erőforrások menedzselése az erőforrásokkal. A Node Managerrel együttműködve figyeli és végrehajtja a feladatokat.
Az alkalmazás futtatásához a YARN-en keresztül az alábbi lépéseket kell végrehajtani.
- Az ügyfél felveszi a kapcsolatot az erőforrás-kezelővel, amely kéri az alkalmazási folyamat futtatását, azaz elküldi a YARN alkalmazást.
- A következő lépés az, hogy az erőforrás-kezelő egy csomópontkezelőt keres, amely viszont elindítja az Application Master-et egy tárolóban.
- Az Application Master futtathatja a végrehajtást a tárolóban, amelyben jelenleg fut, és eredményt szolgáltathat az ügyfélnek, vagy további tárolókat kérhet az erőforrás-kezelőtől, amelyeket elosztott számításnak lehet nevezni.
- Az ügyfél ezután felveszi a kapcsolatot az erőforrás-kezelővel az alkalmazás állapotának ellenőrzésére.
A MapReduce segítségével a Hadoop 1.0 verziójában (MRV1) a csúcsonként meghatározták a térképek és a csökkent rések számát. Szintén Hadoop-fürtben, mivel a hardver képességei változtak, és egy adott csomóponton a feladatok számát kézzel kellett korlátozni. A YARN esetében azonban ez a hiányosság kiküszöbölhető, mert itt az erőforrás-kezelő ismeri az egyes csomópontok kapacitását, amikor kommunikál az egyes csomópontokon futó csomópontkezelővel.
Következtetés - Hadoop YARN architektúra
A YARN segít legyőzni a Hadoop 1.0 MapReduce skálázhatósági problémáját, mivel elosztja a Job Tracker munkáját, mind a feladatok ütemezését, mind a feladatok előrehaladásának nyomon követését. Ugyancsak leküzdésre kerül a rendelkezésre állás kérdése, mivel a Hadoop 1.0 korábban a Job Tracker hiba a feladatok újraindulásához vezetett. A YARN számos hozzáadott bónuszt kapott, például jobb erőforrás-felhasználást, mivel nincs rögzített rés a feladatokra, mivel központi erőforrás-kezelést biztosít. Tehát a YARN-rel a Hadoop korábbi verziójában felmerült számos probléma megoldódik, mivel ez segít az adatfeldolgozás elkülönítésében az ütemezéstől és az erőforrás-kezeléstől. A YARN segítségével interaktív lekérdezéseket lehet függetlenül futtatni, és jobb valósidejű elemzést biztosíthat.
Ajánlott cikkek
Ez egy útmutató a Hadoop YARN Architecture-hez. Itt tárgyaljuk a YARN különféle összetevőit, amelyek magukban foglalják az erőforrás-kezelőt, a csomópontkezelőt és a tárolókat, valamint az architektúrát. A további javasolt cikkeken keresztül további információkat is megtudhat -
- Apache Hadoop ökoszisztéma
- Hadoop ökoszisztéma alkatrészek
- Hadoop alkatrészek
- Hadoop ökoszisztéma