Uvod v Hadoop komponente

Sestavni deli Hadoop so v glavnem HDFS, Map Reduce, Preja. Danes živimo v digitalni dobi, kjer je hitrost izdelave podatkov zelo visoka, približno ustvarjamo 2, 5 kvintijona podatkov na dan. Čeprav se zmogljivost shranjevanja diskov povečuje, iskalna hitrost pa se za to količino podatkov ni povečala. Če želite to premagati, moramo podatke prebrati vzporedno, če želimo to doseči v Hadoopu, imamo HDFS (Hadoop Distributed File System), kjer so nabori podatkov shranjeni kot bloki v HDFS (za več podrobnosti glej razdelek HDFS), da lahko hkrati beremo podatke in dosežemo višja hitrost obdelave. Obdelava podatkov poteka tako, da se pridobijo ali napovedujejo nekatere pomembne informacije ali da se pridobijo nekateri trendi ali vzorci. Za uresničitev želenih informacij se uporablja postopek MapReduce. Zemljevid in pomanjšanje sta dve različni fazi obdelave podatkov.

Glavne komponente Hadoopa

Spodaj so opisane glavne sestavine Hadoopa:

1. Hadoop porazdeljeni datotečni sistem (HDFS)

HDFS je shranjevalni sloj za Big Data, je skupina mnogih strojev, shranjeni podatki se lahko uporabljajo za obdelavo s pomočjo Hadoopa. Ko podatke potisnemo v HDFS, jih lahko obdelujemo kadarkoli, do trenutka, ko bodo podatki obdržani v HDFS, dokler datoteke ročno ne izbrišemo. HDFS shranjuje podatke kot blok, najmanjša velikost bloka je 128 HM v Hadoop 2.x, za 1.x pa 64MB. HDFS podvaja bloke razpoložljivih podatkov, če so podatki shranjeni v enem stroju in če stroj ne uspe, podatki niso izgubljeni, vendar se temu izognemo, se podatki presnemajo na različnih strojih. Faktor podvajanja je privzeto 3 in spreminjamo ga lahko v HDFS-site.xml ali pa z uporabo ukaza Hadoop fs -strep -w 3 / dir s podvajanjem imamo bloke na različnih strojih za visoko razpoložljivost.
HDFS je arhitektura master-slave, to je NameNode kot master in Data Node kot podrejeni. NameNode je stroj, v katerem so shranjeni vsi metapodatki vseh blokov, shranjenih v DataNode.

2. PREJ

YARN je bil predstavljen v Hadoopu 2.x, pred tem pa je imel Hadoop JobTracker za upravljanje virov. Job Tracker je bil mojster in kot suženj je imel sledilca opravil. Job Tracker je bil tisti, ki je skrbel za razporejanje delovnih mest in dodeljevanje sredstev. Sledilnik opravil je skrbel za zemljevid in zmanjšal naloge, stanje pa se je redno posodabljalo na Job Tracker. S je vrsta upravljavca virov, ki je imel mejo razširljivosti in sočasno izvajanje nalog je imelo tudi omejitev. Ta vprašanja so bila obravnavana v YARN in je skrbela za razporeditev sredstev in razporejanje delovnih mest v grozdu. Izvedba zemljevida Zmanjšajte sredstva za delo v grozdu, da bi sredstva, dodeljena za to delo, pomagala PRIJA. PREVA določa, katero delo je opravljeno in na katerem stroju je opravljeno. Vsebuje informacije o razpoložljivih jedrih in pomnilniku v grozdu, spremlja porabo pomnilnika v grozdu. Z NameNode sodeluje s podatki, v katerih prebiva, in sprejema odločitev o dodelitvi sredstev.

3. MapReduce

Ekosistem Hadoop je stroškovno učinkovit, razširljiv in prilagodljiv način dela s tako velikimi nabori podatkov. Hadoop je okvir, ki uporablja poseben model programiranja, imenovan MapReduce, za razčlenitev računskih nalog na bloke, ki jih je mogoče distribuirati okoli kopice blagovnih strojev z uporabo Hadoop Distributed Filesystem (HDFS).

MapReduce je dve različni nalogi Map and Reduce, Map pred fazo reduktorja. Kot že ime pove, faza Zemljevid preslika podatke v pare ključ-vrednost, saj vsi vemo, da Hadoop uporablja ključne vrednosti za obdelavo. Faza reduktorjev je tista faza, v kateri imamo dejansko logiko. Razen teh dveh faz izvaja tudi fazo premeščanja in razvrščanja.

1. Mapper

Mapper je razred, v katerem se vhodna datoteka pretvori v par ključev in vrednosti za nadaljnjo obdelavo. Med branjem podatkov se prebere v ključnih vrednostih le, kadar je ključ pomaknjen in vrednost je celoten zapis.

Npr. Imamo datoteko Diary.txt v tem, da imamo zapisani dve vrstici, torej dva zapisa.

Tu je čudovit dan, v katerem bi morali uživati, odmiki za 't' so 0, za 'w' pa 33 (beli presledki se štejejo tudi kot znak), zato bo preskuševalec podatke prebral kot par ključ-vrednost, kot (ključ, vrednost), (0, čudovit dan je to), (33, morali bi uživati)

2. reduktor

Reduktor je razred, ki sprejema ključe in vrednosti iz izhoda faze preslikav. Ključi in vrednosti, ustvarjene iz zemljevidnika, se sprejmejo kot vnos v reduktorju za nadaljnjo obdelavo. Reducer sprejema podatke iz več zemljevidov. Reduktor združi te vmesne podatke na zmanjšano število ključev in vrednosti, ki je končni izhod, to bomo videli v primeru.

3. Voznik

Poleg razreda map in reduktorja potrebujemo še en razred, ki je razred Driver. Ta koda je potrebna za MapReduce, saj je most med ogrodjem in izvedeno logiko. Določa konfiguracijo, pot vhodnih podatkov, pot shranjevanja izhoda in najpomembneje, katere razrede preslikav in reduktorjev je treba implementirati, v tem razredu pa je treba nastaviti tudi številne druge konfiguracije. npr. v voznikovem razredu lahko določimo ločilo izhodne datoteke, kot je prikazano v razredu gonilnikov spodnjega primera.

Primer

Glede na to, da imamo nabor podatkov potovalne agencije, moramo zdaj iz podatkov izračunati, koliko ljudi se odloči za potovanje na določeno destinacijo. Za dosego tega cilja bomo morali vzeti destinacijo kot ključno in za štetje bomo vzeli vrednost kot 1. Torej, v fazi kartiranja bomo cilj preslikali na vrednost 1. Zdaj v premeščanju in razvrščanju v fazi po zemljevidu, bo vse vrednosti preslikala v določen ključ. Na primer, če imamo cilj kot MAA, smo preslikali 1, imamo tudi po premeščanju in razvrščanju 2 dogodka, dobimo MAA, (1, 1), kjer je (1, 1) vrednost. Zdaj smo v fazi reduktorja že v fazi reduktorja uvedli logiko za dodajanje vrednosti, da dobimo skupno število vozovnic, rezerviranih za cilj. To je tok MapReduce.

Spodaj je posnetek zaslona izvajanega programa za zgornji primer.

1. Vozniški razred

2. Razred Mapperja

3. razred reduktorjev

Izvedba Hadoopa

Za izvajanje Hadoop moramo najprej sestaviti vrček in nato lahko izvedemo s spodnjim ukazom Hadoop jar eample.jar /input.txt /output.txt

Zaključek

Tu smo razpravljali o glavnih sestavnih delih Hadoopa, kot so HDFS, Map Reduce in YARN. To je raspodeljen računalniški okvir, ki pomaga shranjevati in obdelovati podatke ter narediti potrebno analizo zajetih podatkov. Hadoop je fleksibilen, zanesljiv glede podatkov, saj se podatki posnemajo in so razširljivi, tj. V grozd lahko dodamo več strojev za shranjevanje in obdelavo podatkov.

Priporočeni članki

To je vodnik za Hadoop Components. Tu smo z Primeri razpravljali o glavnih sestavnih delih Hadoopa. Če želite izvedeti več, lahko preberete tudi druge naše predlagane članke -

  1. Uvod v JDBC arhitekturo
  2. Kaj je Hadoop grozd?
  3. Kaj je MapReduce v Hadoopu?
  4. Kaj je Big data in Hadoop
  5. Hadoop fs ukazi

Kategorija: