Ero HDFS: n ja HBase: n välillä
HDFS (Hadoop Distributed File System) HDFS antaa sinun tallentaa valtavia määriä tietoja hajautetulla ja redundanssisella tavalla, joka toimii hyödykelaitteistoon. HBase (Hadoopin tietokanta) on NoSQL-tietokanta, joka toimii Hadoop-klusterin päällä
Katsokaamme vastaavasti HDFS: n ja HBase: n komponentteja ja arkkitehtuuria:
HDFS: n komponentit
- NameNode
- DataNode
NameNode: NameNode: ta voidaan pitää järjestelmän isäntänä. Se ylläpitää tiedostojärjestelmää ja kaikkien järjestelmässä olevien tiedostojen ja hakemistojen metatietoja. Kaksi tiedostoa 'Nimitilan kuva' ja 'Muokkausloki' käytetään metatietojen tallentamiseen. Namenodella on tiedot kaikista tietyn tiedoston datalohkoja sisältävistä datasolmuista, mutta se ei kuitenkaan säilytä lohkojen sijainteja jatkuvasti. Nämä tiedot rekonstruoidaan joka kerta datasolmuista järjestelmän käynnistyessä.
DataNode: DataNodes ovat orjia, jotka sijaitsevat kussakin klusterin koneessa ja tarjoavat todellisen tallennustilan. Se vastaa asiakkaiden pyyntöjen palvelemisesta, lukemisesta ja kirjoittamisesta.
HDFS-arkkitehtuuri: -
HBase-komponentit: -
- Hbase-mestari
- Aluepalvelin
- alue
- Zookeeper
HMaster : Se on HBase-arkkitehtuurin pääpalvelin. Seurantaagentti on tarkkailla kaikkia aluepalvelimia, ja myös HMasterin vastuulla on olla rajapinta kaikille metatietojen muutoksille. Se toimii NameNode: lla.
Aluepalvelimet: Kun Aluepalvelin vastaanottaa kirjoituksia ja lukee asiakkaan pyyntöjä, se osoittaa pyynnön tietylle alueelle, jolla todellinen sarakeperhe sijaitsee. Asiakas voi kuitenkin ottaa suoraan yhteyttä aluepalvelimiin, eikä viestinnälle aluepalvelimien kanssa tarvita HMasterin pakollista lupaa. Asiakas vaatii HMaster-apua, kun metatietoihin ja kaavion muutoksiin liittyviä toimintoja vaaditaan.
Alueet: Alueet ovat HBase-klusterin perusrakennuselementtejä, joka muodostuu taulukkojen jakautumisesta ja koostuu sarakeperheistä. Se sisältää useita kauppoja, yhden jokaiselle sarakeperheelle. Se koostuu pääasiassa kahdesta komponentista, jotka ovat Memstore ja Hfile.
ZooKeeper: Hbaseessa Zookeeper on keskitetty valvontapalvelin, joka ylläpitää määritystietoja ja tarjoaa hajautetun synkronoinnin. Hajautetulla synkronoinnilla pyritään pääsemään klusterin läpi kulkeviin hajautettuihin sovelluksiin vastuulla tarjota koordinointipalveluita solmujen välillä. Jos asiakas haluaa kommunikoida alueiden kanssa, palvelimen asiakkaan on ensin lähetettävä ZooKeeper.
HBase-arkkitehtuuri: - HBase on osa Hadoopin ekosysteemiä.
Syvyysmalli: -
Head to Head -vertailu HDFS: n ja HBase: n välillä (Infografia)
Alla on 14 parhainta vertailua HDFS: n ja HBase: n välillä
Keskeiset erot HDFS: n ja HBase: n välillä
Alla on ero HDFS: n ja HBase: n välillä
- HDFS on hajautettu tiedostojärjestelmä, joka soveltuu hyvin suurten tiedostojen tallennukseen. Mutta toisaalta HBase on rakennettu HDFS: n päälle ja tarjoaa nopeita tietuehakuja (ja päivityksiä) suurille taulukoille.
- HDFS perustuu GFS-tiedostojärjestelmään. Mutta HBase on jaettu - käyttää HDFS: ää varastointiin, sarake - suuntautunut, moniulotteinen (versiot) ja tallennusjärjestelmä
- HDFS käyttää HIVE: tä yhtenä komponenttina quire-kielelle, joka on HIVE-kyselykieli (HQL), mutta Hbase EI ole SQL-tietokanta, joka tarkoittaa: - Ei liittymiä, ei kyselymoottoria, ei tietotyyppejä, ei (pirun) SQL, ei kaavaa eikä DBA: ta tarvita.
- Koska HDFS on hajautettu tallennusyksikkö, siksi sillä ei ole muuta erityistä kieltä kuin käytettävät komennot, kuten esimerkiksi UNIX-maku: - Hadoop dfs -mkdir / foodir
- hadoop dfs -cat /foodir/myfile.txt
- hadoop dfs -rm /foodir/myfile.txt
Mutta toisaalta Hbaseella on oma käyttöliittymänsä Hbase Shell-muodossa, kuten esimerkiksi: -
- hbase (main): 003: 0> luoda 'testi', 'cf'
0 riviä 1, 2200 sekunnissa
- hbase (main): 004: 0> laita 'testi', 'rivi1', 'vrt .: a', 'arvo1'
0 riviä 0, 0560 sekunnissa
- hbase (pää): 005: 0> laita 'testi', 'rivi 2', 'vrt .: b', 'arvo2'
0 riviä 0, 0370 sekunnissa
- hbase (tärkein): 006: 0> laita 'testi', 'rivi 3', 'cf: c', 'arvo3'
0 riviä 0, 0450 sekunnissa
- hbase (pää): 007: 0> skannaa 'testi'
RIVAKARJA + Solu
rivin 1 sarake = vrt .: a, aikaleima = 1288380727188, arvo = arvo1
rivin 2 sarake = cf: b, aikaleima = 1288380738440, arvo = arvo2
rivin 3 sarake = cf: c, aikaleima = 1288380747365, arvo = arvo3
3 riviä 0, 0590 sekunnissa
HDFS vs HBase -vertailutaulukko
Vertailun perusteet | HDFS | HBase |
Miksi tarvitsemme heitä | Tarve käsitellä valtavia tietoaineistoja suurissa klustereissa tietokoneita | HBase on hajautettu sarakekeskeinen tietovarasto, joka on rakennettu HDFS: n päälle |
Solmut epäonnistuvat joka päivä | a) Epäonnistuminen on odotettavissa pikemminkin kuin poikkeuksellista b) Klusterin solmujen lukumäärä ei ole vakio | HBase on Apache-avoimen lähdekoodin projekti, jonka tavoitteena on tarjota tallennustila Hadoop Distributed Computing -sovellukselle |
Kirjoita malli | Lisää vain | Satunnainen kirjoitus, irtotavarana |
Lue malli | Koko taulukon skannaus, osiotaulun skannaus | Satunnainen lukeminen, pienen kantaman tai taulukon skannaus |
W / R-malli | HDFS sopii erinomaisesti kertakirjoittamiseen ja moninkertaiseen lukemiseen | HBase sopii erinomaisesti HDFS: ään tallennetun datan satunnaiseen kirjoittamiseen ja lukemiseen. |
Pesän (SQL) suorituskyky | Suhteellisen erittäin hyvä | 4-5 kertaa hitaammin |
Jäsennelty varastointi | Tee se itse tai TSV tai sekvenssitiedosto | Harva sarakeperhedatamalli |
Tietojen enimmäiskoko | Tyypillisesti voi varastoida lähellä noin 30 PB: tä | Noin noin 1 PB |
Dynaamiset muutokset | HDFS: llä on jäykkä arkkitehtuuri, joka ei salli muutoksia. Se ei helpota dynaamista tallennusta. | HBase mahdollistaa dynaamiset muutokset ja sitä voidaan käyttää erillisiin sovelluksiin. |
Tietojen jakelu | Tiedot tallennetaan hajautetusti klusterin solmujen välillä. Tiedot jaetaan lohkoihin ja tallennetaan sitten HDFS-klusterissa olevien solmujen yli. | Taulukot jaetaan klusterissa alueiden kautta, ja alueet jaetaan ja jaetaan automaattisesti uudelleen tietosi kasvaessa |
Tietovarasto | Kaikki tiedot tallennetaan pieninä tiedostoina ja kaikkien tiedostojen tyypillinen koko on 64 Mt (uudemmassa versiossa 128 Mt) | Kaikki tiedot tallennetaan taulukkojen, rivien ja sarakkeiden muodossa |
Tietojen mallintaminen | HDFS: ssä käytämme Map Reduce -tekniikkaa, joka jakaa tiedostot avain-arvo-pareihin | HBase perustuu Googlen Bigtable-malliin, joka käyttää myös avain-arvo-pareja |
toiminnot | Sillä on korkea latenssioperaatio | Sillä on alhainen viiveoperaatio |
saavutettavuus | Siihen pääsee ensisijaisesti MR (Map Reduce) -työpaikkojen kautta | Sitä voidaan käyttää kuorikomennoilla, Java-sovellusliittymällä, REST, Avro tai Thrift |
Johtopäätös - HDFS vs HBase
Yhteenvetona voidaan todeta, että sekä HDFS: llä että HBase: lla on upea tekniikka omillaan. Sekä HDFS että HBase luotiin tallentamaan Big Data ja helpottamaan niiden käyttöä ja laskemista. Sekä HDFS että HBase kulkevat vierekkäin, kun yksi HDFS tallentaa tiedot, toinen HBase asettaa dataan kaavion siitä, kuinka se voidaan tallentaa ja noutaa myöhemmin asiakkaan käyttöä varten.
Hbase on yksi NoSql-sarakekeskeisestä hajautetusta tietokannasta, joka on saatavana apache-säätiössä. HBase antaa enemmän suorituskykyä vähempien tietueiden hakemiseen kuin Hadoop tai Hive. Mistä tahansa syöttöarvosta on erittäin helppo hakea, koska se tukee indeksointia, tapahtumia ja päivityksiä.
Voimme suorittaa online-reaaliaikaista analysointia käyttämällä Hbase-järjestelmää, joka on integroitu Hadoop-ekosysteemiin. Siinä on automaattinen ja konfiguroitavissa oleva tietojoukkojen tai taulukoiden varjostus ja se tarjoaa rauhalliset sovellusliittymät MapReduce-töiden suorittamiseen.
Suositeltava artikkeli
Tämä on ollut opas kohtaan HDFS vs HBase, niiden merkitys, pään vertailu, avainerot, vertailutaulukko ja johtopäätökset. tässä artikkelissa on kaikki hyödyllinen ero HDFS: n ja HBase: n välillä.Voit myös tarkastella seuraavia artikkeleita saadaksesi lisätietoja -
- HBase vs. Cassandra - kumpi on parempi (infografia)
- Selvitä 7 parasta eroa Hadoopin ja HBasen välillä
- Apache Hive: n 12 parasta vertailua Apache HBase -sovellukseen (Infographics)