Razlika između HDFS i HBase
HDFS (Hadoop Distributed File System) HDFS omogućava pohranu ogromnih količina podataka na distribuirani i suvišni način, koji se pokreću na robnom hardveru. HBase (Hadoopova baza podataka) je NoSQL baza podataka koja se pokreće na vrhu vašeg Hadoop skupa
Pogledajmo komponente i arhitekturu HDFS-a i HBase-a:
Dijelovi HDFS-a
- NameNode
- DataNode
NameNode: NameNode se može smatrati majstorom sustava. Održava stablo datoteka datoteka i metapodatke za sve datoteke i direktorije prisutne u sustavu. Dvije datoteke "Slika imena prostora" i "Uređivanje dnevnika" koriste se za spremanje podataka o metapodacima. Namenode ima znanje o svim čvorovima podataka koji sadrže blokove podataka za datu datoteku, međutim ne blokira mjesta uporno. Te se informacije rekonstruiraju svaki put iz čvorova podataka kada se sustav pokrene.
DataNode: DataNodes su robovi koji se nalaze na svakom računalu u klasteru i osiguravaju stvarnu pohranu. Odgovorna je za posluživanje, čitanje i pisanje zahtjeva za klijente.
HDFS Arhitektura: -
Dijelovi HBase: -
- Hbase majstor
- Poslužitelj regije
- Regija
- Čuvar zoo vrta
HMaster : To je glavni poslužitelj u HBase arhitekturi. To je agent za praćenje koji nadzire sve Regione Server, a HMaster je odgovoran za sučelje za sve promjene metapodataka. Radi na NameNode.
Regioni poslužitelji: Kada Region Server prima pisanje i čitanje zahtjeva od klijenta, on dodjeljuje zahtjev određenoj regiji u kojoj je stvarna obitelj stupaca. Međutim, klijent može izravno stupiti u kontakt s regionalnim poslužiteljima, nema potrebe za HMaster obveznim dopuštenjem za klijenta u vezi s komunikacijom s Region poslužiteljima. Klijent traži pomoć HMastera kada su potrebne operacije povezane s metapodacima i promjenama shema.
Regije: Regije su osnovni građevni elementi klastera HBase koji se sastoji od raspodjele tablica i sastoje se od obitelji stupaca. Sadrži više prodavaonica, po jednu za svaku obitelj stupaca. Sastoji se uglavnom od dvije komponente, a to su Memstore i Hfile.
ZooKeeper: U Hbase-u, Zookeeper je centralizirani poslužitelj za nadzor koji održava podatke o konfiguraciji i omogućuje distribuiranu sinkronizaciju. Distribuirana sinkronizacija znači pristup distribuiranim aplikacijama koje pokreću klaster s odgovornošću pružanja usluga koordinacije između čvorova. Ako klijent želi komunicirati s regijama, klijent poslužitelja prvo mora pristupiti ZooKeeper-u.
HBase arhitektura: - HBase je dio Hadoopovog ekosustava.
Model u dubini: -
Usporedba između HDFS i HBase (Infographics)
Ispod je top 14 usporedbi HDFS-a i HBase-a
Ključne razlike između HDFS i HBase
Ispod je razlika između HDFS i HBase kako slijedi
- HDFS je distribuirani datotečni sustav koji je dobro prilagođen za pohranu velikih datoteka. No, HBase, s druge strane, izgrađen je na vrhu HDFS-a i omogućuje brze pretrage (i ažuriranja) za velike stolove.
- HDFS se temelji na datotečnom sustavu GFS. Ali HBase se distribuira - koristi HDFS za pohranu, kolona - orijentirana, višedimenzionalna (verzije) i sustav za pohranu
- HDFS koristi HIVE kao jednu od svojih komponenti za jezik upita koji je HIVE Query Language (HQL), ali Hbase NIJE SQL baza podataka što znači: - Ne pridružuje se, ne traži uređaj, nema tipove podataka, nema (prokletstvo) SQL, nema shemu i nije potreban DBA.
- Kako je HDFS distribuirana jedinica za pohranu, nema drugog jezika osim naredbi koje se koriste poput UNIX ukusa, primjerice: - Hadoop dfs -mkdir / foodir
- hadoop dfs -cat /foodir/myfile.txt
- hadoop dfs -rm /foodir/myfile.txt
Ali s druge strane Hbase ima svoje sučelje u obliku Hbase Shell-a, na primjer: -
- hbase (glavna): 003: 0> stvori 'test', 'cf'
0 redaka u 1.2200 sekundi
- hbase (glavna): 004: 0> stavi 'test', 'row1', 'cf: a', 'value1'
0 redaka u 0.0560 sekundi
- hbase (glavna): 005: 0> stavi 'test', 'row2', 'cf: b', 'value2'
0 redaka u 0.0370 sekundi
- hbase (glavna): 006: 0> stavi 'test', 'row3', 'cf: c', 'value3'
0 redaka u 0.0450 sekundi
- hbase (glavna): 007: 0> skeniranje 'test'
ROW COLUMN + CELL
row1 stupac = cf: a, vremenska oznaka = 1288380727188, vrijednost = vrijednost1
row2 stupac = cf: b, vremenska oznaka = 1288380738440, vrijednost = vrijednost2
row3 stupac = cf: c, vremenska oznaka = 1288380747365, vrijednost = vrijednost3
3 retka u 0, 0590 sekundi
Tabela usporedbe HDFS-a i HBase-a
Osnove za usporedbu | HDF-ovi | HBase |
Zašto su nam potrebni | Trebate obraditi ogromne skupove podataka na velikim klasterima računala | HBase je distribuirana stupac podataka orijentirana na stupce izgrađena na vrhu HDFS |
Čvorovi propadaju svaki dan | a) Neuspjeh je očekivan, a ne izniman b) Broj čvorova u klasteru nije konstantan | HBase je projekt otvorenog koda Apache čiji je cilj osigurati pohranu za distribuirano računalstvo Hadoop |
Uzorak pisanja | Dodati samo | Slučajno pisanje, skupno inkrementalno |
Pročitajte obrazac | Kompletna provjera stola, skeniranje pregradne tablice | Slučajno čitanje, skeniranje malog dometa ili ispitivanje tablice |
W / R Uzorak | HDFS je idealno za slučajeve pisanja i čitanja-puno puta | HBase je idealno za slučajno pisanje i čitanje podataka koji su pohranjeni u HDFS. |
Učinkovitost košnica (SQL) | Relativno vrlo dobro | 4-5 puta sporije |
Strukturirano skladištenje | Učinite to sami ili TSV ili datoteku slijeda | Model podataka rijetkih obiteljskih stupaca |
Maksimalna veličina podataka | Obično se može pohraniti u blizini oko 30 PB | Otprilike oko 1 PB |
Dinamičke promjene | HDFS ima krutu arhitekturu koja ne dopušta promjene. To ne olakšava dinamičku pohranu. | HBase omogućava dinamičke promjene i može se koristiti za samostalne aplikacije. |
Distribucija podataka | Podaci se distribuiraju na čvorove u klasteru. Podaci su podijeljeni u blokove i pohranjuju se preko čvorova prisutnih u HDFS klasteru. | Tablice se distribuiraju na klasteru kroz regije, a regije se automatski dijele i ponovno raspodjeljuju kako podaci rastu |
Pohrana podataka | Svi se podaci pohranjuju u obliku malih datoteka, a sve datoteke su uobičajene veličine 64 MB (što je u novijoj verziji 128 MB) | Svi se podaci pohranjuju u obliku tablica, redaka i stupaca |
Modeliranje podataka | U HDFS koristimo tehniku smanjivanja karte koja datoteke dijeli na parove ključ - vrijednost | HBase se temelji na Googleovom modelu Bigtable koji također koristi parove Key-Value |
operacije | Ima operacije visokog kašnjenja | Ima operacije s latencijom |
Pristupačnost | Prvenstveno mu se pristupa kroz MR (smanjenje karte) | Pristup mu se može narediti putem naredbi školjki, korisničkog API-ja na Javi, REST-u, Avro-u ili Thrift-u |
Zaključak - HDFS vs HBase
Sve u svemu, i HDFS i HBase u sebi imaju izvrsne tehnologije. I HDFS i HBase stvoreni su za pohranjivanje velikih podataka i olakšavanje pristupa i računanja njima. I HDFS i HBase idu jedni pored drugih, jer jedan HDFS pohranjuje podatke, drugi HDase postavlja shemu podataka o tome kako ih pohraniti i kasnije preuzeti za upotrebu klijenta.
Hbase je jedna od NoSql distribuiranih baza podataka o stupacima dostupna u apache fondaciji. HBase daje veću učinkovitost za dohvaćanje manje zapisa nego Hadoop ili Hive. Vrlo je lako tražiti dane ulazne vrijednosti jer podržava indeksiranje, transakcije i ažuriranje.
Možemo vršiti internetsku analitiku u stvarnom vremenu pomoću Hbase integriranog u Hadoop ekosustav. Ima automatsko i podesivo izoštravanje za skupove podataka ili tablice i pruža miran API za obavljanje poslova MapReduce.
Preporučeni članak
Ovo je vodič za HDFS vs HBase, njihovo značenje, usporedba "Head to Head", ključne razlike, tablica usporedbe i zaključak. ovaj članak ima svu korisnu razliku između HDFS-a i HBase-a. Možete također pogledati sljedeće članke da biste saznali više -
- HBase protiv Cassandra - tko je bolji (Infographics)
- Otkrijte 7 najboljih razlika između Hadoopa i HBasea
- Top 12 usporedba Apache košnice i Apache HBase (Infographics)