Razlika med Hive in HBase

Apache Hive in HBase sta tehnologiji velikih podatkov na osnovi Hadoop-a. Oba sta iskala podatke. Panj in HBase delujeta na vrhu Hadoopa in se razlikujeta v svoji funkcionalnosti. Hive je SQL narečje, ki temelji na zmanjšanju zemljevidov, medtem ko HBase podpira samo MapReduce. HBase shranjuje podatke v obliki parov ključ / vrednost ali družino stolpcev, medtem ko Hive ne shranjuje podatkov.

Razlike med Hive proti HBase (Infographics)

Spodaj je zgornjih 8 razlik med Hive proti HBase

Ključne razlike med Hive proti HBase

  • Hbase je združljiv s kislinami, medtem ko panj ni.
  • Hive podpira kriterije particioniranja in filtriranja glede na obliko datuma, medtem ko HBase podpira avtomatizirano particijo.
  • Hive ne podpira izjav o posodobitvi, medtem ko jih HBase podpira.
  • Hbase je hitrejši v primerjavi s Hivem pri pridobivanju podatkov.
  • Hive se uporablja za obdelavo strukturiranih podatkov, medtem ko HBase, ker je brez sheme, lahko obdeluje katero koli vrsto podatkov.
  • Hbase je v primerjavi s panjom zelo (vodoravno) razširljiv.
  • Hive analizira podatke na HDFS s podporo SQL poizvedb in jih nato pretvori v zemljevid in zmanjša delovna mesta, medtem ko v Hbase, ker je v realnem času, neposredno izvaja svoje operacije na bazi podatkov s particijo na tabele in družine stolpcev.
  • Ko pri iskanju podatkov panj uporablja lupino, imenovano lupina Hive, da izda ukaze, medtem ko HBase, ker je baza podatkov, bomo uporabili ukaz za obdelavo podatkov v HBase.
  • Za odhod do lupine Pive bomo uporabili ukazni panj. Po tem bo videti kot panj>. V HBaseu preprosto damo kot Use HBase.

Tabela primerjave med panj in HBase

Osnove za primerjavo

PanjHbase
Vrsta baze podatkovTo ni baza podatkovPodpira bazo podatkov NoSQL
Vrsta obdelavePodpira paketno obdelavo, tj. OLAPPodpira pretok podatkov v realnem času, tj. OLTP
Model baze podatkovPanj podpira, da ima model shemeHbase ni shema
ZamudaPanj ima nizko zamudoHbase ima veliko zakasnitev
CenaV primerjavi z HBase je dražjeJe stroškovno učinkovit
kdaj uporabitiPanj lahko uporabljamo, kadar ne želimo napisati zapletene kode MapReduceHBase lahko uporabimo, kadar želimo imeti naključen dostop za branje in zapisovanje velike količine podatkov
Uporabite primereUporabljati ga je treba za analizo podatkov, ki so shranjeni v določenem časovnem obdobjuUporabiti bi ga bilo treba za analizo obdelave podatkov v realnem času.
PrimeriHubspot je primer za HiveFacebook je najboljši primer za Hbase

Razlike v kodiranju med Hive proti HBase

Zdaj se pogovorimo o osnovnih razlikah med Hive in HBase pri kodiranju.

Osnove za primerjavo

PanjHbase
Za ustvarjanje baze podatkovUSTVARJANJE PODATKOV (ČE NE OBSTOJI) PODATKOVNI IME;Ker je Hbase baza podatkov, nam ni treba ustvariti posebne baze podatkov
Izpustitev baze podatkovDATABASA DROP (ČE OBSTOJI) PODATKOVNO IME (OMEJITEV ALI KASICADA);NA
Ustvari tabeloUSTVARJITE (ZAČASNO ALI ZUNANJE) TABELO (ČE NE OBSTOJI) TABELNO IME

((ime-imena stolpca (vrsta komentarja-komentar stolpca), ….)) (komentar tabele_ komentar) (ROW FORMAT-format vrstice) (Shranjeno kot oblika datoteke)
USTVARJAM '', ''
Spreminjanje tabeleALTER TABLE name PRENIŠI NA novo ime

ALTER TABLE ime DROP (COLUMN) ime stolpca

ALTER TABLE ime DODAJTE STOLPCI (col-spec (, col-spec ..))

ALTER TABLE ime SPREMENI ime stolpca novo ime novo tip

SPLOŠNO ime TABELE ZAMENITE STROKOVE (col-spec (, col-spec ..))

ALTER 'TABLE-NAME', NAME => 'COLUMN-NAME', VERSIONS =>
Onemogočanje tabeleNAonemogoči 'TABLE-NAME' ->, da onemogoči določeno ime tabele

onesposobiti vse tabele, ki se ujemajo z običajnim izrazom

Omogočanje tabeleNAomogoči »TABLE-NAME«
Če želite spustiti tabeloDROP TABLE, ČE OBSTOJI ime tabeleČe želimo spustiti tabelo, jo moramo najprej onemogočiti

onemogoči 'ime-tabele'

drop 'ime tabele'

Podobno lahko uporabimo invalid_all in drop_all za brisanje tabel, ki ustrezajo določenemu pravilnemu izrazu.

Za seznam baz podatkovprikaži baze podatkov;NA
Če želite prikazati tabele v zbirki podatkovprikažite tabele;seznam
Za opis sheme tabeleopišite ime tabele;opišite „ime tabele“

Vključevanje Hive proti HBase

  • Namestite in konfigurirajte Hive.
  • Namestite in konfigurirajte HBase.
  • Za integracijo Hive in HBase v Pive uporabljamo SKLADIŠČENE VOZIČKE
  • Storage Handlers je kombinacija SERDE, InputFormat, OutputFormat, ki sprejema katero koli zunanjo entiteto kot tabelo v Hive.
  • Tako ta funkcija uporabniku pomaga pri izdaji poizvedb SQL, naj bo tabela v Hadoopu ali v bazi podatkov, ki temelji na NOSQL, kot so HBase, MongoDB, Cassandra, Amazon DynamoDB.
  • Zdaj si bomo ogledali en primer povezovanja Hive s HBase s pomočjo HiveStorageHandler:
  • Najprej moramo z ukazom izdelati tabelo Hbase.

ustvarite 'Študent', 'osebne informacije', 'odstranjevanje informacij'

-> Osebni podatki in podatki o oddelku ustvarijo dve različni družini stolpcev v tabeli Študent.

  • Nekaj ​​podatkov moramo vstaviti v tabelo Študent. Na primer, kot je navedeno spodaj.

vstaviti 'študent', 'sid01', 'osebne informacije: ime', 'Ram'
dal 'študent', 'sid01', 'osebne informacije: mailid', ' '
dal 'študent', 'sid01', 'deptinfo: deptname', 'Java'
dal 'Student', 'sid01', 'deptinfo: joinyear', '1994'

-> Podobno lahko ustvarimo podatke za sid02, sid03…

  • Zdaj moramo izdelati tabelo Hive, ki kaže na tablico HBase.
  • Za vsak stolpec v Hbase bomo v Hive ustvarili eno posebno tabelo za ta stolpec. V tem primeru bomo v panju ustvarili 2 tabeli

create external table student_hbase(sid String, name String, mailid String)
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler with serdeproperties("hbase.columns.mapping"=":key, personalinfo:name, personalinfo:mailid")
tblproperties("hbase.table.name"="student");
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'

-> Podobno moramo v panju izdelati tabelo s podatki o odseku.

  • Zdaj lahko v panj zapišemo poizvedbo SQL, kot je navedeno spodaj.

select * from student_hbase;

Na ta način lahko Hive integriramo s HBase.

Zaključek - Hive proti HBase

Kot je razpravljeno, sta obe različni tehnologiji, ki zagotavljata različne funkcionalnosti, kjer Hive deluje z uporabo jezika SQL, lahko pa ga imenujemo tudi, ko HQL in HBase uporabljajo pare ključ-vrednost za analizo podatkov. Hive in HBase delujejo bolje, če so združeni, ker ima panj nizke zamude in lahko obdeluje ogromno količino podatkov, vendar ne more vzdrževati posodobljenih podatkov, HBase pa ne podpira analize podatkov, ampak podpira posodobitve na ravni vrstic na veliko količino podatkov.

Priporočeni članek

To je vodnik za Hive proti HBase, njihov pomen, primerjava med glavo, ključne razlike, tabela primerjave in sklep. Če želite izvedeti več, si oglejte tudi naslednje članke -

  1. Apache Pig vs Apache Pive - Top 12 uporabnih razlik
  2. Ugotovite 7 najboljših razlik med Hadoopom in HBase
  3. Top 12 primerjava Apache Hive z Apache HBase (Infographics)
  4. Hadoop vs Hive - odkrijte najboljše razlike

Kategorija: