Johdanto Hadoop-komponentteihin

Hadoop-komponentit ovat pääasiassa HDFS, Map Reduce, Lanka. Nykyään elämme digitaaliaikana, jonka tietojen tuotantonopeus on erittäin korkea. Tuotamme noin 2, 5 kvintillioita dataa päivässä. Vaikka levyjen tallennuskapasiteetti kasvaa, mutta hakumäärä ei ole kasvanut tämän tietomäärän suhteen. Tämän ratkaisemiseksi meidän on luettava tiedot rinnakkain. Tämän saavuttamiseksi Hadoopissa meillä on HDFS (Hadoop Distributed File System), jossa tietojoukot tallennetaan lohkoina HDFS: ään (katso lisätietoja HDFS-osiosta) tietojen lukemiseksi rinnakkain ja saavuttaakseen korkeampi käsittelynopeus. Tietojen käsittely tapahtuu merkityksellisen tiedon noutamiseksi tai ennustamiseksi tai trendejen tai kuvioiden saamiseksi. MapReduce-prosessia käytetään suorittamaan halutut tiedot. Kartta ja Pienennä ovat tietojen käsittelyn kaksi eri vaihetta.

Hadoopin tärkeimmät komponentit

Seuraavassa kuvataan Hadoopin tärkeimmät komponentit:

1. Hadoop-hajautettu tiedostojärjestelmä (HDFS)

HDFS on Big Data -tallennuskerros, se on monien koneiden klusteri. Tallennettua tietoa voidaan käyttää käsittelyyn Hadoopilla. Kun tiedot on siirretty HDFS-tietokantaan, voimme käsitellä niitä milloin tahansa, kunnes tietojen käsittelemisaika on HDFS: ssä, kunnes tiedostot poistetaan manuaalisesti. HDFS tallentaa tiedot lohkona, lohkon vähimmäiskoko on 128 Mt Hadoop 2.x: llä ja 1.x: llä se oli 64 Mt. HDFS toistaa saatavissa olevan tiedon lohkot, jos tiedot tallennetaan yhteen koneeseen ja jos kone epäonnistuu, tietoja ei menetetä, mutta näiden välttämiseksi tiedot toistetaan eri koneissa. Kopiointikerroin on oletuksena 3 ja voimme muuttua HDFS-site.xml-tiedostossa tai käyttämällä komentoa Hadoop fs -strep -w 3 / dir replikoimalla, että meillä on eri koneissa olevat lohkot, jotta saatavuus olisi korkea.
HDFS on isäntä-orja-arkkitehtuuri, se on NameNode isäntänä ja Data Node orjana. NameNode on kone, johon kaikki metatiedot tallennetaan kaikista DataNode-tietokantaan tallennetuista lohkoista.

2. lanka

YARN esiteltiin Hadoop 2.x -versiossa, ennen sitä Hadoopilla oli JobTracker resurssien hallintaan. Job Tracker oli päällikkö, ja sen orjana oli tehtävätehtävä. Job Tracker oli aikaisempi huolehtimaan töiden aikatauluttamisesta ja resurssien jakamisesta. Tehtäväseurantaja hoiti aikaisemmin kartan ja vähentää tehtäviä, ja tila päivitettiin määräajoin Job Trackeriksi. With on eräänlainen resurssienhallinta, sillä oli skaalautuvuusraja ja tehtävien samanaikaisella suorittamisella oli myös rajoitus. Näitä kysymyksiä käsiteltiin lankakierrossa, ja se huolehti resurssien allokoinnista ja työpaikkojen aikataulusta klusterissa. Kartan suorittaminen Vähennä työn tarpeita resursseja klusterissa, jotta työlle varatut resurssit YARN auttaa. Lanka määrittää, mikä työ tehdään ja mikä kone se tehdään. Siinä on kaikki tiedot klusterissa käytettävissä olevista ytimistä ja muistista. Se seuraa klusterin muistin kulutusta. Se on vuorovaikutuksessa NameNode: n kanssa tiedoista, joissa se sijaitsee, päätöksenteossa resurssien allokoinnista.

3. MapReduce

Hadoop-ekosysteemi on kustannustehokas, skaalautuva ja joustava tapa työskennellä niin suurten tietojoukkojen kanssa. Hadoop on kehys, joka käyttää tiettyä ohjelmointimallia, nimeltään MapReduce, hajottaakseen laskentatehtävät lohkoiksi, jotka voidaan jakaa hyödykekoneiden klusterin ympärille Hadoop Distributed Filesystem (HDFS) -sovelluksella.

MapReduce on kaksi erilaista tehtävää Kartta ja Pienennä, Kartta edeltää Pienennysvaihetta. Kuten nimestä voi päätellä Kartta-vaihe kartoittaa tiedot avain-arvopareihin, kuten me kaikki tiedämme, Hadoop käyttää avainarvot käsittelyyn. Pelkistysvaihe on vaihe, jossa meillä on todellinen logiikka toteutettavaksi. Näiden kahden vaiheen lisäksi se toteuttaa myös sekoitus- ja lajitteluvaiheen.

1. Mapper

Mapper on luokka, jossa syötetiedosto muunnetaan avainten ja arvojen pariksi jatkokäsittelyä varten. Tietoja luettaessa se luetaan avainarvoissa vain silloin, kun avain on bittipoikkeama ja arvo on koko tietue.

Esimerkiksi meillä on tiedosto Diary.txt, koska meillä on kaksi riviä kirjoitettu eli kaksi tietuetta.

Tämä on upea päivä, jota meidän pitäisi nauttia täällä, 't': n poikkeamat ovat 0 ja 'w': n kohdalla 33 (valkoisia välilyöntejä pidetään myös merkkinä), joten karttaaja lukee tiedot avain-arvoparina, as (avain, arvo), (0, tämä on upea päivä), (33, meidän pitäisi nauttia)

2. Vähennysventtiili

Vähennyslaite on luokka, joka hyväksyy avaimet ja arvot kartoitusvaiheen tuotosta. Karttaajasta luodut avaimet ja arvot hyväksytään syötteinä reduktorissa jatkokäsittelyä varten. Reducer hyväksyy tiedot useilta kartoittajilta. Pelkistin yhdistää nämä välitiedot pienennettyyn lukumäärään avaimia ja arvoja, mikä on lopputulos, näemme tämän esimerkissä.

3. Kuljettaja

Kartta- ja pelkistysluokan lisäksi tarvitsemme vielä yhden luokan, joka on kuljettajaluokka. Tämä koodi on välttämätön MapReduce-sovellukselle, koska se on silta kehysten ja toteutetun logiikan välillä. Se määrittelee kokoonpanon, syöttötietopolun, lähtötallennuspolun ja mikä tärkeintä mitkä mapper- ja reducer-luokat on toteutettava, samoin kuin monet muut kokoonpanot asetetaan tähän luokkaan. Esimerkiksi ohjainluokassa voimme määrittää tulostiedoston erottimen alla olevan esimerkin ohjainluokan mukaisesti.

esimerkki

Otetaan huomioon, että meillä on matkatoimistojen tietojoukko, nyt meidän on laskettava tiedoista, kuinka moni ihminen päättää matkustaa tiettyyn määränpäähän. Tämän saavuttamiseksi meidän on otettava kohde avaimena ja laskettaessa otamme arvoksi 1. Joten kartoitusvaiheessa kartoitamme määränpään arvoon 1. Nyt sekoitus- ja lajitteluvaiheessa karttaajan jälkeen, se kartoittaa kaikki arvot tiettyyn avaimeen. Esimerkiksi, jos meillä on kohde MAA: na, olemme kartoittaneet 1, niin että meillä on 2 tapahtumaa sekoituksen ja lajittelun jälkeen, saadaan MAA, (1, 1), missä (1, 1) on arvo. Nyt pelkistysvaiheessa meillä on jo logiikka, joka on toteutettu pelkistysvaiheessa lisätä arvoja, jotta saadaan määränpäähän varatun lipun kokonaismäärä. Tämä on MapReducen virtaus.

Alla on kuvakaappaus yllä olevasta esimerkistä toteutetusta ohjelmasta.

1. Kuljettajaluokka

2. Mapper-luokka

3. Alennusluokka

Suoritetaan Hadoop

Hadoopin suorittamiseksi meidän on ensin rakennettava purkki ja sitten voidaan suorittaa suorittamalla alla oleva komento Hadoop jar eample.jar /input.txt /output.txt

johtopäätös

Tässä olemme keskustelleet Hadoopin ydinkomponenteista, kuten HDFS, Map Reduce ja YARN. Se on hajautettu klusterin laskennan kehys, joka auttaa tallentamaan ja käsittelemään tietoja ja tekemään vaaditun analyysin kaapatusta tiedosta. Hadoop on joustava, datan kannalta luotettava, koska tietoja replikoidaan ja skaalataan, ts. Voimme lisätä klusteriin lisää koneita tietojen tallentamiseksi ja käsittelemiseksi.

Suositellut artikkelit

Tämä on opas Hadoop-komponentteihin. Tässä keskustelimme esimerkkien avulla Hadoopin ydinkomponenteista. Voit myös käydä läpi muiden ehdotettujen artikkeleidemme saadaksesi lisätietoja -

  1. Johdatus JDBC-arkkitehtuuriin
  2. Mikä on Hadoop-klusteri?
  3. Mikä on MapReduce Hadoopissa?
  4. Mikä on iso data ja Hadoop
  5. Hadoop fs -komennot

Luokka: