Sissejuhatus Hadoopi lõnga arhitektuuri
MapReduce'i kasutati nii ressursside halduse kui ka töötlemise jaoks varasemas Hadoopi versioonis 1.0. Job Tracker teostas siin ressursside jaotamist, ajastamist ja tööde jälgimist, määrates ülesande jälgijale kaardi ja vähenda ülesandeid. Selle tulemuseks olid sellised küsimused nagu mastaapsus, ressursside ebatõhus kasutamine. Kuna Hadoopi raamistik on aastate jooksul läbi teinud mitmeid muutusi; näeme, et seda saab kasutada palju enamaks kui ainult MapReduce'i tööde käivitamiseks. YARN tähistab veel ühte ressursiläbirääkijat, mida nimetatakse Hadoopi klastrihaldussüsteemiks, mis võeti kasutusele koos Hadoop 2.0-ga, et toetada hajutatud andmetöötlust, mis parandab ka MapReduce'i rakendamist. YARN-is on ressursside haldur ja ajastajad raamistikust väljaspool. Ehkki YARN-is on andmesõlmed olemas, pole tööülesannete jälgijaid ega tööotsijaid enam olemas. Samuti on lõnga YARN abil ressursside haldamine ja üldine ajastamine. Selles teemas tutvume lõnga YARN erineva arhitektuuriga
Selgitage diagrammiga Hadoopi lõngaarhitektuuri
(Hadoopi lõnga arhitektuur)
YARN tutvustab Hadoop 2.0 ressursijuhi ja rakendusmeistri kontseptsioone. Ressursihaldur näeb ressursside kasutamist Hadoopi klastris, samas kui konkreetses klastris töötavate rakenduste elutsüklit jälgib rakenduste meister. Põhimõtteliselt võime öelda, et klastriressursside osas peab rakendusmeister läbirääkimisi ressursihalduriga. Seda ülesannet täidavad konteinerid, millel on kindlad mälupiirangud. Siis kasutatakse neid konteinereid rakendusespetsiifiliste protsesside käivitamiseks ja ka neid konteinereid jälgivad klastri sõlmedel töötavad sõlmehaldurid. See kinnitab, et rakendus ei kasuta rohkem kui eraldatud ressursse.
Lõnga erinevad komponendid
Allpool on toodud lõnga erinevad komponendid.
1) ressursijuht
YARN töötab ressursside halduri kaudu, mida on üks sõlme kohta, ja sõlmehalduri kaudu, mis töötab kõigis sõlmedes. Ressursihaldur haldab kogu klastris kasutatavaid ressursse ning sõlmehaldur lõunastab ja jälgib konteinereid. Ajasti ja rakenduste haldur on ressursihalduri kaks komponenti.
- Planeerija : ajastamine toimub vastavalt rakenduste ressursinõudlusele. YARN pakub väheseid planeerijaid, kelle vahel saab valida ning need on õiglased ja mahutavuse plaanijad. Mis tahes riistvara või rakenduse tõrke korral ei taga ajaplaneerija ebaõnnestunud ülesannete taaskäivitamist. Samuti eraldab planeerija ressursse jooksvatele rakendustele läbilaskevõime ja järjekorra alusel.
- Rakendusehaldur : see haldab Application Masteri käitamist klastris ja rakendusehalduri konteineri tõrke korral aitab seda taaskäivitada. Samuti vastutab see töö vastuvõtmise aktsepteerimise eest.
2) sõlmehaldur
Sõlmehaldur vastutab ülesande täitmise eest igas andmesõlmes. Sõlmehaldur YARN-is saadab vaikimisi ressursihaldurile südamelöögi, mis kannab teavet jooksvate konteinerite ja uute konteinerite ressursside saadavuse kohta. See vastutab klastri sõlmede individuaalse vaatamise eest ning haldab konkreetse sõlme töövooge ja kasutaja töid. Peamiselt haldab see ressursihalduri määratud rakenduskonteinereid. Sõlmehaldur alustab konteinereid, luues nõutud konteineriprotsessid, ja tapab konteinerid ka ressursihalduri küsimisel.
3) konteinerid
Konteinerid on ressursid, nagu RAM, CPU, mälu jne, ühes sõlmes ning neid planeerib ressursside haldur ja jälgib sõlmehaldur. Konteineri elutsükkel haldab YARN-i konteinereid konteineri käivitamise konteksti abil ja annab juurdepääsu rakendusele ressursside konkreetseks kasutamiseks konkreetses hostis.
4) rakendusmeister
See jälgib ülesannete täitmist ja haldab ka klastris töötavate rakenduste elutsüklit. Individuaalne rakendusmeister seostatakse tööga, kui see raamistikku esitatakse. Selle peamine vastutus on ressursside haldajaga ressursside üle läbirääkimiste pidamine. Ülesannete jälgimiseks ja täitmiseks töötab see koos sõlmehalduriga.
Rakenduse käitamiseks YARN-i kaudu viiakse läbi järgmised toimingud.
- Klient võtab ühendust ressursihalduriga, kes taotleb taotlusprotsessi käivitamist, st ta esitab rakenduse YARN.
- Järgmine samm on see, et ressursside haldur otsib sõlmehaldurit, mis käivitab omakorda rakendusehalduri konteineris.
- Rakendusehaldur võib käitamise käivitada konteineris, milles see praegu töötab, ja anda tulemuse kliendile või taotleda ressursihaldurilt rohkem konteinereid, mida võib nimetada hajutatud andmetöötluseks.
- Seejärel võtab klient rakenduse oleku jälgimiseks ühendust ressursihalduriga.
MapReduce'i abil Hadoopi versioonis 1.0 (MRV1) määrati kaartide ja vähendatud teenindusaegade arv sõlme kohta. Ka Hadoopi klastris, kuna riistvara võimalused varieerusid ja konkreetse sõlme ülesannete arvu tuli käsitsi piirata. Kuid YARN-iga see puudus ületatakse, kuna siin teab ressursside haldur iga sõlme mahtu, kui ta suhtleb iga sõlmega töötava sõlmehalduriga.
Järeldus - Hadoop YARN Architecture
YARN aitab üle saada Hadoop 1.0 MapReduce'i mastabeeritavusprobleemist, kuna see jagab Job Trackeri töö nii tööaja planeerimisel kui ka ülesannete edenemise jälgimisel. Samuti on lahendatud ka saadavuse küsimus, kuna varem versioonis Hadoop 1.0 oli tööotsija rikke tõttu ülesannete taaskäivitamine. YARN-iga kaasnes palju lisaboonuseid, näiteks ressursside parem kasutamine, kuna ülesannete jaoks pole kindlat pesa, kuna see pakub ressursside tsentraalset haldamist. Nii et YARNiga on paljud Hadoopi varasema versiooni ees seisnud probleemid lahendatud, kuna see aitab eraldada andmetöötlust ajastamisest ja ressursside haldamisest. Funktsiooni YARN abil on võimalik interaktiivseid päringuid iseseisvalt käitada ja pakkuda ka paremat reaalajas analüüsi.
Soovitatavad artiklid
See on olnud Hadoopi lõngaarhitektuuri juhend. Siin käsitleme lõnga erinevaid komponente, mille hulka kuuluvad ressursihaldur, sõlmehaldur ja konteinerid koos arhitektuuriga. Lisateavet leiate ka meie muudest soovitatud artiklitest -
- Apache Hadoopi ökosüsteem
- Hadoopi ökosüsteemi komponendid
- Hadoopi komponendid
- Hadoopi ökosüsteem