Što je Hadoop? Uvod, Archistruktura, ekosustav, komponente
Što je Hadoop?
Apache Hadoop je softverski okvir otvorenog koda koji se koristi za razvoj aplikacija za obradu podataka koje se izvode u distribuiranom računalnom okruženju.
Aplikacije izgrađene korištenjem HADOOP-a pokreću se na velikim skupovima podataka raspoređenih po klasterima robnih računala. Računala su jeftina i široko dostupna. Oni su uglavnom korisni za postizanje veće računalne snage po niskoj cijeni.
Slično podacima koji se nalaze u lokalnom datotečnom sustavu osobnog računalnog sustava, u Hadoopu podaci se nalaze u distribuiranom datotečnom sustavu koji se naziva Hadoop Distribuirani datotečni sustav. Model obrade temelji se na 'Lokalitet podataka' koncept u kojem se računalna logika šalje čvorovima klastera (poslužitelju) koji sadrže podatke. Ova računalna logika nije ništa, nego kompajlirana verzija programa napisanog na jeziku visoke razine kao što je Java. Takav program obrađuje podatke pohranjene u Hadoop HDFS.
Znate li? Klaster računala sastoji se od skupa više procesorskih jedinica (disk za pohranu + procesor) koje su međusobno povezane i djeluju kao jedinstveni sustav.
Hadoop ekosustav i komponente
Donji dijagram prikazuje različite komponente u Hadoop ekosustavu-
Apache Hadoop sastoji se od dva potprojekta –
- Hadoop MapReduce: MapReduce je računalni model i softverski okvir za pisanje aplikacija koje se pokreću na Hadoopu. Ovi MapReduce programi sposobni su za paralelnu obradu ogromnih podataka na velikim klasterima računalnih čvorova.
- HDFS (Hadoop distribuirani datotečni sustav): HDFS brine o dijelu za pohranu Hadoop aplikacija. MapReduce aplikacije troše podatke iz HDFS-a. HDFS stvara višestruke replike podatkovnih blokova i distribuira ih na računalne čvorove u klasteru. Ova distribucija omogućuje pouzdana i iznimno brza izračunavanja.
Iako je Hadoop najpoznatiji po MapReduceu i njegovom distribuiranom datotečnom sustavu - HDFS, izraz se također koristi za obitelj srodnih projekata koji spadaju pod kišobran distribuiranog računalstva i velike obrade podataka. Ostali projekti povezani s Hadoopom na apaš uključiti su Hive, HBase, Mahout, Sqoop, Flume i ZooKeeper.
Hadoop Architektura
Hadoop ima Master-Slave Archistruktura za pohranu podataka i korištenje distribuirane obrade podataka MapReduce i HDFS metode.
NameNode:
NameNode predstavlja sve datoteke i direktorije koji se koriste u prostoru imena
DataNode:
DataNode vam pomaže upravljati stanjem HDFS čvora i omogućuje vam interakciju s blokovima
Glavni čvor:
Glavni čvor vam omogućuje provođenje paralelne obrade podataka pomoću Hadoop MapReduce.
Podređeni čvor:
Podređeni čvorovi su dodatni strojevi u Hadoop klasteru koji vam omogućuju pohranu podataka za provođenje složenih izračuna. Štoviše, svi slave čvorovi dolaze s Task Trackerom i DataNodeom. To vam omogućuje sinkronizaciju procesa s NameNode i Job Trackerom.
U Hadoopu se glavni ili podređeni sustav može postaviti u oblaku ili lokalno
Značajke 'Hadoopa'
• Prikladno za analizu velikih podataka
Budući da su Big Data obično distribuirani i nestrukturirani, HADOOP klasteri su najprikladniji za analizu Big Data. Budući da logika obrade (a ne stvarni podaci) teče do računalnih čvorova, troši se manje propusnosti mreže. Ovaj koncept se naziva as koncept lokaliteta podataka što pomaže povećati učinkovitost Hadoop aplikacija.
• Skalabilnost
HADOOP klasteri se lako mogu skalirati u bilo kojoj mjeri dodavanjem dodatnih čvorova klastera i tako omogućiti rast Big Data. Također, skaliranje ne zahtijeva izmjene u logici aplikacije.
• Tolerancija kvarova
HADOOP ekosustav ima mogućnost repliciranja ulaznih podataka na druge čvorove klastera. Na taj način, u slučaju kvara čvora klastera, obrada podataka može se nastaviti korištenjem podataka pohranjenih na drugom čvoru klastera.
Topologija mreže u Hadoopu
Topologija (raspored) mreže utječe na performanse Hadoop klastera kada veličina Hadoop klastera raste. Osim performansi, također treba voditi računa o visokoj dostupnosti i rukovanju kvarovima. Kako bi se postigao ovaj Hadoop, formiranje klastera koristi topologiju mreže.
Obično je propusnost mreže važan faktor koji treba uzeti u obzir pri formiranju bilo koje mreže. Međutim, kako bi mjerenje propusnosti moglo biti teško, u Hadoopu je mreža predstavljena kao stablo, a udaljenost između čvorova ovog stabla (broj skokova) smatra se važnim čimbenikom u formiranju Hadoop klastera. Ovdje je udaljenost između dva čvora jednaka zbroju njihove udaljenosti od najbližeg zajedničkog pretka.
Hadoop klaster sastoji se od podatkovnog centra, racka i čvora koji zapravo izvršava poslove. Ovdje se podatkovni centar sastoji od regala, a rack od čvorova. Mrežna propusnost dostupna procesima varira ovisno o lokaciji procesa. Odnosno, dostupna propusnost postaje manja kako se udaljavamo od-
- Procesi na istom čvoru
- Različiti čvorovi na istom nosaču
- Čvorovi na različitim policama istog podatkovnog centra
- Čvorovi u različitim podatkovnim centrima