Különbség a kaptár és a HBase között

Az Apache Hive és a HBase Hadoop alapú nagy adattechnológiák. Mindketten adatgyűjtésre használtak. A Hive és a HBase a Hadoop tetején futnak, és funkcionálisan különböznek egymástól. A Hive térkép-alapú SQL nyelvjárás, míg a HBase csak a MapReduce-t támogatja. A HBase az adatokat kulcs / érték vagy oszlopcsalád-pár formájában tárolja, míg a Hive nem tárolja az adatokat.

Fej-fej különbségek a kaptár és a HBase között (Infographics)

Az alábbiakban a Hive és a HBase közötti legjobbak közötti 8 különbség látható

A Hive és a HBase közötti különbségek

  • A Hbase egy ACID-kompatibilis, míg a Hive nem.
  • A Hive támogatja a particionálást és a szűrési kritériumokat a dátumformátum alapján, míg a HBase támogatja az automatikus particionálást.
  • A Hive nem támogatja a frissítési utasításokat, míg a HBase támogatja azokat.
  • A Hbase gyorsabb, mint a Hive az adatok letöltése.
  • A Hive a strukturált adatok feldolgozására szolgál, míg a HBase, mivel séma-mentes, bármilyen típusú adatot képes feldolgozni.
  • A Hbase erősen (vízszintesen) skálázható, mint a Hive.
  • A Hive elemezte a HDFS adatait az SQL lekérdezések segítségével, majd átalakítja azokat térképpé és csökkenti a feladatokat, míg a Hbase-ben, mivel a valós idejű adatfolyam streaming, közvetlenül az adatbázisban végzi műveleteit táblákba és oszlopcsaládokba osztással.
  • amikor az adatrészek lekérdezésekor a kaptár egy Hive shell néven ismert héjat használ a parancsok kiadására, míg a HBase, mivel ez adatbázis, parancsot fogunk használni az adatok feldolgozásához a HBase-ben.
  • A kaptárhéj eléréséhez a kaptár parancsot használjuk. Miután megadta, úgy fog megjelenni, mint a kaptár> .A HBase-ben egyszerűen a HBase használatának adjuk meg.

Hive vs HBase összehasonlító táblázat

Az összehasonlítás alapja

KaptárHbase
Adatbázis típusaEz nem adatbázisTámogatja a NoSQL adatbázist
A feldolgozás típusaTámogatja a kötegelt feldolgozást, azaz az OLAP-tTámogatja a valós idejű adatfolyamot, azaz az OLTP-t
Adatbázis-modellA kaptár támogatja a sémamodelltAz Hbase séma-mentes
KésleltetésA kaptár alacsony késleltetési idővel rendelkezikA Hbase nagy késleltetésű
KöltségEz költségesebb, mint a HBaseKöltséghatékony
mikor kell használniA kaptár akkor használható, ha nem akarunk összetett MapReduce kódot írniA HBase akkor használható, ha véletlen hozzáférést akarunk elérni nagy mennyiségű adat olvasásához és írásához
Használjon eseteketEzt egy ideig tárolt adatok elemzésére kell használniAz adatok valós idejű feldolgozásának elemzésére kell használni.
PéldákA Hubspot példa a Hive számáraA Facebook a legjobb példa a Hbase számára

A Hive és a HBase közötti kódolás különbségei

Most tárgyaljuk meg a Hive és a HBase közötti alapvető különbségeket a kódolásban.

Az összehasonlítás alapja

KaptárHbase
Adatbázis létrehozásaAZ ADATBÁZIS LÉTREHOZÁSA (HA NEM MEGLÉVIK) ADATBÁZIS-NEV;Mivel a Hbase adatbázis, nem kell külön adatbázist létrehoznunk
Adatbázis eldobásaCÍMÁNOS ADATBÁZIS (HA LENKEZIK) ADATBÁZIS-NEV (KORLÁTOZOTT VAGY CSAKAD);NA
Táblázat létrehozásaLétrehozása (ideiglenes vagy külső) tábla (ha nem létezik) Táblázatnév

((oszlopnév-adattípus (Megjegyzés oszlop-megjegyzés), ….)) (Megjegyzéstábla-megjegyzés) (ROW FORMAT sor-formátum) (Fájl formátumban tárolva)
CREATE '', ''
A táblázat megváltoztatásaALTER TABLE név RENAME to new-name

ALTER TABLE név DROP (COLUMN) oszlopnév

VÁLTOZÓ TÁBLÁZAT név hozzáadása oszlopok (col-spec (, col-spec ..))

ALTER TABLE név VÁLTOZTATÁS oszlopnév új név új név új típus

VÁLTOZÓ TÁBLÁZAT neve CSERÉLJEN OSZLOPOK (col-spec (, col-spec ..))

ALTER 'TABLE-NAME', NAME => 'COLUMN-NAME', VÁLTOZÁS =>
Táblázat letiltásaNAa 'TABLE-NAME' -> letiltása a megadott táblanév letiltásához

Disable_all 'r *' -> az összes tábla letiltásához, amely megegyezik a normál kifejezéssel

Táblázat engedélyezéseNAengedélyezze a „TABLE-NAME”
Egy asztal eldobásaHASZNÁLATTÁBLÁZAT, Ha létezik táblanévHa szeretnénk egy táblát ejteni, akkor először le kell tiltanunk

letiltja a 'table-name'

drop 'table-name'

Hasonlóképpen, a Disable_all és a drop_all használatával törölhetjük a megadott reguláris kifejezésnek megfelelő táblákat.

Az adatbázisok felsorolásaadatbázisok megjelenítése;NA
A táblák felsorolása az adatbázisbanbemutató táblák;lista
A táblázat sémájának leírásaírja le a tábla nevét;írja le a „tábla-nevet”

A kaptár és a HBase integrálása

  • Telepítse és konfigurálja a Hive alkalmazást.
  • Telepítse és konfigurálja a HBase-t.
  • A kaptár és a HBase integrálásához a TÁROLÓ KEZELŐket használjuk a kaptárban.
  • A Tárolókezelők a SERDE, az InputFormat, az OutputFormat kombinációja, amely bármilyen külső entitást elfogad a táblázatban a Kaptárban.
  • Ez a szolgáltatás tehát segíti a felhasználót az SQL lekérdezések kiadásában, akár a Hadoopban, akár a NOSQL alapú adatbázisban, például HBase, MongoDB, Cassandra, Amazon DynamoDB.
  • Most megvizsgálunk egy példát a Hive és a HBase összekapcsolására a HiveStorageHandler használatával:
  • Először létre kell hoznunk a Hbase táblát a parancs segítségével.

hozzon létre „hallgató”, „személyes információ”, „részleg információ”

-> A személyes adatok és a részvételi információk két különböző oszlopcsaládot hoznak létre a Diák táblázatban.

  • Néhány adatot be kell illesztenünk a Diáktáblába. Például, az alábbiakban említettek szerint.

tedd a 'hallgató', 'sid01', 'személyes információ: név', 'Ram'
tedd a 'diák', 'sid01', 'személyes információ: mailid', ' '
tedd a 'diák', 'sid01', 'deptinfo: deptname', 'Java' feliratot
tedd a 'Student', 'sid01', 'deptinfo: joinyear', '1994' címet

-> Hasonlóképpen tudunk adatokat készíteni a sid02, sid03 adatokról …

  • Most létre kell hoznunk Hive táblázatot, amely a HBase táblára mutat.
  • A Hbase minden oszlopához létrehozzunk egy adott táblát ehhez az oszlophoz a Hive-ben. Ebben az esetben 2 táblát hozunk létre a Hive-ben.

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'

-> Hasonlóképpen el kell készítenünk a kaptárban egy részletes információs táblát.

  • Most SQL lekérdezést írhatunk a kaptárba, az alábbiak szerint.

select * from student_hbase;

Ily módon integrálhatjuk a Hive-t a HBase-vel.

Következtetés - Hive vs HBase

Amint azt tárgyaltuk, mindkettő különböző technológiák, amelyek eltérő funkciókat biztosítanak, ha a Hive SQL nyelv használatával működik, és HQL és HBase néven is kulcs-érték párokat használhat az adatok elemzésére. A Hive és a HBase jobban működik, ha kombinálódnak, mert a Hive alacsony késleltetéssel rendelkezik, és hatalmas mennyiségű adatot képes feldolgozni, de nem tudják naprakész adatokat tartani, és a HBase nem támogatja az adatok elemzését, de nagy mennyiségben támogatja a sor szintű frissítéseket az adatok.

Ajánlott cikk

Ez egy útmutató a Hive vs HBase, azok jelentésének, a fej-fej összehasonlításának, a legfontosabb különbségeknek, az összehasonlító táblázatnak és a következtetéseknek. A következő cikkeket is megnézheti további információkért -

  1. Apache Pig vs Apache Hive - A 12 legfontosabb különbség
  2. Tudja meg a 7 legjobb különbséget a Hadoop és a HBase között
  3. Az Apache Hive és az Apache HBase 12 legfontosabb összehasonlítása (Infographics)
  4. Hadoop vs Hive - derítse ki a legjobb különbségeket

Kategória: