Uvod u Hadoop komponente

Komponente Hadoopa su uglavnom HDFS, Smanjivanje karte, Pređa. Danas živimo u digitalnom dobu u kojem je stopa stvaranja podataka vrlo visoka otprilike mi proizvodimo 2, 5 kvintijona podataka dnevno. Iako se kapacitet pohrane diskova povećava, ali potražnja se ne povećava za ovu količinu podataka. Da bismo to prevladali, moramo paralelno čitati podatke, a da bismo to postigli u Hadoopu imamo HDFS (Hadoop distribuirani datotečni sustav) gdje se skupovi podataka pohranjuju kao blokovi u HDFS (za više detalja pogledajte HDFS odjeljak) za paralelno čitanje podataka i postizanje veća brzina obrade. Obrada podataka vrši se kako bi se pronašli ili predvidjeli neke značajne informacije ili dobili neki trendovi ili obrasci. MapReduce postupak se koristi za postizanje željenih informacija. Karta i smanjivanje su dvije različite faze obrade podataka.

Glavne komponente Hadoopa

Glavne komponente Hadoopa su opisane u nastavku:

1. Distribuirani datotečni sustav Hadoop (HDFS)

HDFS je skladišni sloj za Big Data, to je skup mnogih strojeva, pohranjeni podaci mogu se koristiti za obradu pomoću Hadoopa. Nakon što se podaci potisnu u HDFS, možemo ih obraditi u bilo koje vrijeme, sve dok vrijeme koje obrađujemo podaci će biti u HDFS-u dok ručno ne izbrišemo datoteke. HDFS pohranjuje podatke kao blok, minimalna veličina bloka je 128MB u Hadoopu 2.x, a za 1.x je 64MB. HDFS replicira blokove dostupnih podataka ako su podaci pohranjeni u jednom stroju i ako stroj ne uspije, podaci se ne gube, ali da bi se to izbjeglo, podaci se repliciraju na različitim strojevima. Faktor replikacije prema zadanim postavkama je 3, a možemo promijeniti u HDFS-site.xml ili pomoću naredbe Hadoop fs -strep -w 3 / dir repliciranjem imamo blokove na različitim strojevima za veliku dostupnost.
HDFS je arhitektura master-slave to je NameNode kao master i Data Node kao slave. NameNode je stroj na kojem su pohranjeni svi metapodaci svih blokova pohranjenih u DataNode.

2. PRIJEV

YARN je uveden u Hadoop 2.x, a prije toga Hadoop je imao JobTracker za upravljanje resursima. Job Tracker je bio gospodar i imao je Tracker zadataka kao rob. Job Tracker bio je taj koji se brinuo za zakazivanje radnih mjesta i raspodjelu resursa. Tragač zadataka koristio je brigu o mapama i smanjenju zadataka, a status se periodično ažurirao na Tragaču poslova. S tip je upravitelja resursa imao ograničenje skalabilnosti, a istodobno izvršavanje zadataka također je imalo ograničenje. Ta su pitanja riješena u YARN-u i brinula se o raspodjeli resursa i rasporedu poslova na klasteru. Izvođenje karte Smanjite resurse za posao u klasteru kako biste dobili sredstva dodijeljena za posao. YARN pomaže. PREDNJA određuje koji se posao radi i na kojem se stroju radi. Sadrži sve informacije o dostupnim jezgrama i memoriji u klasteru, prati potrošnju memorije u klasteru. Interesira s NameNode o podacima u kojima boravi kako bi donio odluku o dodjeli resursa.

3. MapReduce

Hadoop ekosustav je isplativ, skalabilan i fleksibilan način rada s tako velikim skupovima podataka. Hadoop je okvir koji koristi određeni programski model, nazvan MapReduce, za razbijanje računskih zadataka u blokove koji se mogu raspodijeliti oko grupi robnih strojeva pomoću Hadoop Distributed Filesystem (HDFS).

MapReduce je dva različita zadatka: Map and Reduce, Map prethodi fazi reduktora. Kao što ime sugerira, faza Map preslikava podatke u parove ključ-vrijednost, kao što svi znamo da Hadoop koristi ključne vrijednosti za obradu. Faza reduktora je faza u kojoj moramo primijeniti stvarnu logiku. Osim ove dvije faze, također provodi fazu izmjene i sortiranja.

1. Mapper

Mapper je klasa u kojoj se ulazna datoteka pretvara u par ključeva i vrijednosti radi daljnje obrade. Dok čitate podatke on se očitava u ključnim vrijednostima samo tamo gdje je ključ pomakan i bit je cijeli zapis.

Npr. Imamo datoteku Diary.txt u kojoj imamo napisana dva retka, tj. Dva zapisa.

Ovo je divan dan u kojem bismo trebali uživati, odstupanja za 't' su 0, a za 'w' 33 (bijeli razmaci se također smatraju znakom), pa će mapper pročitati podatke kao par ključa i vrijednosti, kao (ključ, vrijednost), (0, ovo je divan dan), (33, trebali bismo uživati)

2. reduktor

Reduktor je klasa koja prihvaća ključeve i vrijednosti na izlazu faze mapiranja. Ključevi i vrijednosti generirani iz preslikača prihvaćaju se kao ulaz u reduktor za daljnju obradu. Reduktor prihvaća podatke s više preslikavača. Reduktor agregira te posredne podatke u smanjenom broju ključeva i vrijednosti što je konačni izlaz, vidjet ćemo to u primjeru.

3. Vozač

Osim klase mapiranja i reduciranja, potrebna nam je još jedna klasa koja je klasa vozača. Ovaj je kôd potreban za MapReduce jer je most između ugrađenog okvira i logike. Određuje konfiguraciju, put ulaznih podataka, put za pohranu izlaznih podataka i što je najvažnije koje klase mapiranja i reduktora treba implementirati, kao i mnoge druge konfiguracije u ovoj klasi. npr. u klasi vozača možemo odrediti separator izlazne datoteke kao što je prikazano u klasi vozača na primjeru u nastavku.

Primjer

S obzirom na to da imamo skup podataka putničke agencije, sada treba izračunati iz podataka koliko ljudi odluči putovati na određeno odredište. Da bismo to postigli, odredište ćemo uzeti kao ključno, a vrijednost ćemo uzeti kao 1. Dakle, u fazi mapiranja preslikaćemo odredište u vrijednost 1. Sada u fazi izmjene i sortiranja nakon preslikača, mapirat će sve vrijednosti na određeni ključ. Na primjer, ako imamo odredište kao MAA, preslikali smo 1 i imamo 2 pojave nakon miješanja i razvrstavanja, dobit ćemo MAA, (1, 1) gdje je (1, 1) vrijednost. Sada u fazi reduktora, već imamo implementiranu logiku u fazi reduktora da dodamo vrijednosti da bismo dobili ukupno brojanje karata rezerviranih za odredište. Ovo je protok MapReduce.

Ispod je prikaz snimke zaslona implementiranog programa.

1. Klasa vozača

2. Klasa mapiranja

3. Klasa reduktora

Izvođenje Hadoopa

Za izvršavanje Hadoopa prvo moramo napraviti jar, a zatim to možemo izvršiti pomoću naredbe Hadoop jar eample.jar /input.txt /output.txt

Zaključak

Ovdje smo raspravljali o glavnim komponentama Hadoopa, poput HDFS-a, Mape redukcije i YARN. To je raspodijeljeni računalni okvir klastera koji pomaže pohraniti i obraditi podatke i izvršiti potrebnu analizu uhvaćenih podataka. Hadoop je fleksibilan, pouzdan u pogledu podataka, jer se podaci umnožavaju i skalabiraju, tj. Možemo dodati više strojeva u klaster za pohranu i obradu podataka.

Preporučeni članci

Ovo je vodič za Hadoop komponente. Ovdje smo s primjerima razgovarali o glavnim komponentama Hadoopa. Možete i proći naše druge predložene članke da biste saznali više -

  1. Uvod u JDBC arhitekturu
  2. Što je Hadoop klaster?
  3. Što je MapReduce u Hadoopu?
  4. Što su Veliki podaci i Hadoop
  5. Hadoop fs naredbe

Kategorija: