what is hadoop apache hadoop tutorial
Ovaj Apache Hadoop vodič za početnike detaljno objašnjava sve o Hadoopu za velike podatke, njegovim značajkama, okviru i arhitekturi:
java program za sortiranje niza
U prethodnom uputstvu detaljno smo raspravljali o velikim podacima. Sada je pitanje kako možemo nositi i obraditi tako veliku količinu podataka s pouzdanim i točnim rezultatima.
Zaista postoji izvrsno rješenje koje pruža Apache, a pokreće Java, tj. Hadoop okvir .
=> Pročitajte seriju Easy Training BigData.
Što ćete naučiti:
Što je Hadoop?
Apache Hadoop je okvir otvorenog koda za upravljanje svim vrstama podataka (strukturiranim, nestrukturiranim i polustrukturiranim).
Kao što svi znamo, ako želimo obraditi, pohraniti i upravljati našim podacima, RDBMS je najbolje rješenje. No, podaci bi trebali biti u strukturiranom formatu za obradu sa RDBMS-om. Također, ako se veličina podataka povećava, tada RDBMS nije sposoban rukovati njima i moramo redovito provoditi čišćenje baze podataka.
To može uzrokovati povijesni gubitak podataka i ne može generirati točne i pouzdane rezultate u nekim granama poput vremenske prognoze, bankarstva, osiguranja, prodaje itd. Drugi problem RDBMS-a je taj što ako glavni poslužitelj padne, možemo izgubiti svoje važne podataka i puno pate.
U ovom uputstvu vidjet ćemo kako možemo prevladati ove probleme s Apache Hadoop-om.
Hadoop je distribuirani datotečni sustav i može pohraniti velike količine podataka (podaci u petabajtu i terabajtu). Brzina obrade podataka je također vrlo brza i daje pouzdane rezultate jer ima vrlo visok sustav tolerancije kvarova.
Hadoop je programski okvir otvorenog koda zasnovan na Javi koji podržava pohranu i obradu skupova velikih podataka u distribuiranom računalnom okruženju.
Hadoop se temelji na konceptu klastera koji koristi robni hardver. Ne zahtijeva nikakvu složenu konfiguraciju i možemo uspostaviti Hadoop okruženje s jeftinijim, jednostavnim i laganim hardverskim hardverom.
Koncept klastera jednostavnim riječima su podaci koji se pohranjuju u formatu replikacije na više računala, tako da kada se bilo koji problem ili katastrofa dogodi na jednom od mjesta na kojem se podaci nalaze, tada mora postojati duplikat tih podataka koji su sigurno dostupni na drugom mjestu .
Hadoop protiv RDMBS
U nastavku su navedene neke točke koje opisuju prednosti Hadoopa u odnosu na RDBMS.
Značajke | Hadoop | RDBMS |
---|---|---|
Skladištenje | Vrlo velik kapacitet skladištenja. | Nije moguće pohraniti Bigdata. |
Arhitektura | Hadoop se temelji na HDFS-u, MapReduceu i YARN-u. | RDBMS se temelji na ACID svojstvima. |
Volumen | Može se nositi s velikom količinom podataka. | RDBMS ne može obraditi veliku količinu podataka. |
Raznolikost / vrste podataka | Može rukovati strukturiranim, polustrukturiranim i nestrukturiranim podacima kao što su video, slike, CSV datoteke, xml itd. | Obrađujte samo strukturirane podatke. |
Ubrzati | Brza obrada velike količine podataka. | Vrlo sporo tijekom obrade velike količine podataka. |
Propusnost | Visoka propusnost. | Niska propusnost. |
Tolerancija kvarova | Vrlo dobro | Nije sposoban oporaviti izgubljene podatke ako glavni poslužitelj padne. |
Pouzdan | Vrlo pouzdano i generira točna povijesna i trenutna izvješća. | Nije pouzdan u smislu Bigdata. |
Hadoop značajke
Sada znamo točnu definiciju Hadoopa. Pomaknimo se korak naprijed i upoznajmo se s terminologijama koje koristimo u Hadoopu, naučimo njegovu arhitekturu i vidimo kako točno radi na Bigdata.
Hadoop okvir temelji se na sljedećim konceptima ili modulima:
- HADOOP PREDIJ
- Hadoop Common
- Hadoop HDFS ( H adoop D istribuiran F s S ystem)
- Hadoop MapReduce
# 1) Hadoop PREDIJA: PREĐA znači „ Y i DO noter R izvor N egotiator “koji se koristi za upravljanje klaster tehnologijom oblaka. Koristi se za raspoređivanje poslova.
# 2) Hadoop uobičajeni: Ovo su detaljne knjižnice ili uslužni programi koji se koriste za komunikaciju s ostalim značajkama Hadoopa poput YARN, MapReduce i HDFS.
# 3) Hadoop HDFS: Distribuirani datotečni sustav koristi se u Hadoopu za pohranu i obradu velike količine podataka. Također, koristi se za pristup podacima iz klastera.
# 4) Smanjenje Hadoop mape: MapReduce je glavna značajka Hadoopa koja je odgovorna za obradu podataka u klasteru. Koristi se za planiranje poslova i nadzor obrade podataka.
Ovdje smo upravo uključili definiciju ovih značajki, ali detaljan opis svih tih značajki vidjet ćemo u našim nadolazećim vodičima.
Hadoop arhitektura
Naučimo arhitekturu okvira i vidimo koje se komponente u njemu koriste. Ovaj okvir slijedi arhitekturu master-slave u klasteru.
Slijede komponente Hadoop-a:
- HDFS
- MapReduce
- PREĐA
To su tri važne komponente Hadoop arhitekture. Također bismo trebali razumjeti neke terminologije ili koncepte Arhitekture i vidjeti kako one funkcioniraju.
- Čvor imena
- Čvor podataka
- Čvor sekundarnog imena
- Blokovi
# 1) Čvor imena
Ime Čvor je glavni Čvor u HDFS-u. Sadrži metapodatke HDFS-a kao što su podaci o datotekama, struktura direktorija, podaci o blokovima i sve informacije o čvoru podataka, itd. Čvor imena odgovoran je samo za podatke ili datoteke kojima klijent pristupa. Prati sve transakcije ili promjene u datotekama.
Uglavnom radi na dvije datoteke tj. FsImage i EditLogs . Čvor imena ima JobTracker koji sadrži sve detalje Čvora podataka, poput toga koji Čvor podataka ima koji zadatak, koliko blokova ima svaki Čvor podataka, otkucaje srca svakog Čvora podataka, detalje rasporeda poslova u klasteru itd.
Ukratko, možemo reći da JobTracker sadrži TaskTracker svakog Čvora podataka.
# 2) Čvor podataka
Čvor podataka je podređeni čvor u HDFS-u. Data Node odgovoran je za stvarno skladištenje i obradu podataka. Njegova je glavna zadaća podijeliti posao u tri bloka i pohraniti ga u različite podatkovne čvorove. Nakon toga započinje obrada podataka.
Također, ima TaskTracker koji ima potpune informacije o svakom bloku i koji je blok odgovoran za koji zadatak, koji blokovi su izvršili zadatak, itd., A nakon obrade podataka šalje podatke u Name Node. Svaki put kad se čvor podataka pokrene, sve podatke ponovo šalje čvoru imena.
# 3) Čvor sekundarnog imena
Čvor sekundarnog imena koristi se u slučaju tolerancije kvarova. Postoje dva scenarija kada Name Node nije u funkciji, a puna Hadoop struktura neće uspjeti jer je Node Name jedina točka neuspjeha.
(i) Ako se Name Node ponovno pokrene zbog bilo kojeg problema nego što je trebalo da se ponovno pojavi, jer ima ogromnu količinu podataka, tada je potrebno vrijeme za oporavak.
(ii) U slučaju rušenja Name Node, svi će se HDFS podaci izgubiti i neće ih moći ponovno oporaviti jer je Name Node jedina točka kvara. Dakle, da bi se prevladali ovi problemi, postoji Čvor sekundarnog imena. Sadrži i sliku prostora imena i evidencije uređivanja iste kao i čvor imena.
Nakon određenog razdoblja kopirat će sliku Imena prostora i ažurirati zapisnike Uređivanje s Čvora Imena. Dakle, u slučaju neuspjeha čvora imena, sekundarni čvor imena dolazi na sliku i ponaša se kao primarni čvor imena. Zahvaljujući ovom procesu sprečava potpuni neuspjeh.
# 4) Blokovi
Blokovi su najmanja jedinica u HDFS-u. Hadoop može obraditi ogromnu količinu datoteke jer je dijeli na male blokove. Možemo reći da blokovi nisu ništa drugo do podaci ogromne datoteke. Veličina svakog bloka je 128 MB. Ti se blokovi spremaju u podatkovne čvorove i obrađuju podatke.
Sada, naučimo arhitekturu Hadoopa da bismo razumjeli njegov rad.
Hadoop distribuirani datotečni sustav (HDFS) sustav je datoteka koji se koristi u Hadoop klasteru. Uglavnom se HDFS koristi za pohranu Hadoop podataka u klasteru. HDFS općenito radi na sekvencijalnoj obradi podataka. Kao što već znamo, zasnovan je na Master-Slave arhitekturi.
Svi metapodaci klastera spremaju se na čvor imena u JobTrackeru, a stvarni podaci spremaju se u podatkovni čvor HDFS-a u TaskTrackeru.
MapReduce je odgovoran za obradu podataka. Kad god bilo koja datoteka uđe u klaster na obradu, tada je prvi Čvor podataka podijeli na blokove, a svaki blok sadrži 64 MB podataka i može pohraniti 128 MB. Tada će se svaki blok replicirati dva puta i pohraniti u različite Čvorove podataka bilo gdje u klasteru.
Sve ove informacije poslat će se čvoru imena, a čvor imena pohranit će ih u obliku metapodataka. Tada će stvarna obrada podataka pokrenuti Čvor podataka i slati će otkucaje srca Čvoru imena svake tri sekunde, tako da Čvor imena ima informacije na kojima ovaj Čvor podataka radi.
Ako bilo tko iz podatkovnog čvora ne uspije poslati otkucaje srca, tada čvor imena ponovno kreira kopiju tog bloka na drugom čvoru podataka i započinje obradu.
Sve ove informacije ili snimke bit će pohranjene u FsImage, a ako se izvrši bilo kakva transakcija, uredi zapisnik, spaja nove podatke i uvijek čuva novu kopiju dnevnika.
Poduzet će se blok koji prvi završi zadatak, a Čvor podataka šalje informacije Čvoru imena i Čvor imena će u skladu s tim poduzeti radnju.
U cijelom ovom procesu YARN će podržavati i pružati potrebne resurse sustavu, tako da to neće utjecati na obradu podataka i brzinu. Nakon obrade podataka rezultati će se spremiti u HDFS za daljnju analizu.
Zaključak
U ovom smo tutorijalu naučili što je Hadoop, razlike između RDBMS-a i Hadoop-a, prednosti, komponente i arhitektura Hadoop-a.
Ovaj je okvir odgovoran za obradu velikih podataka i njihovu analizu. Vidjeli smo da MapReduce, YARN i HDFS rade u klasteru.
Bilješka: Slijede detalji o konfiguraciji čvora imena i čvora podataka. Čvor sekundarnog imena imat će istu konfiguraciju kao čvor imena.
Konfiguracija čvora imena:
Procesori: 2 četverojezgrena procesora s @ 2 GHz
RAM: 128 GB
Disk: 6 x 1 TB SATA
Mreža: 10 Gigabit Ethernet
Konfiguracija podatkovnog čvora:
Procesori: 2 četverojezgrena procesora s @ 2 GHz
RAM: 64 GB
Disk: 12-24 x 1TB SATA
Mreža: 10 Gigabit Ethernet
=> Ovdje pogledajte Vodič za početnike velikih podataka.
Preporučena literatura
- Vodič za velike podatke za početnike | Što su veliki podaci?
- 20+ MongoDB lekcija za početnike: besplatni tečaj MongoDB
- Kako postaviti okvir za testiranje Node.js: Vodič za Node.js
- Data Mart Tutorial - Vrste, primjeri i provedba Data Mart
- Dubinski vodiči za pomračenje za početnike
- Vodič za Python za početnike (Praktični BESPLATNI trening za Python)
- Data Driven Framework u Selenium WebDriver koristeći Apache POI
- LoadRunner Vodič za početnike (besplatni 8-dnevni tečaj dubine)