Rozdiel medzi Apache Hive a Apache HBase -

Príbeh Apache Hive sa začína v roku 2007, keď programátor Java nemá problémy s používaním aplikácie Hadoop MapReduce. Vedci a vývojári predpovedali, že zajtrajšia doba éry veľkých dát. Zhromažďovali sa už rôzne formáty údajov, ako sú štruktúrované, pološtrukturované a neštruktúrované. Dokonca aj Facebook zápasil s väčším množstvom spracovania údajov. Vedci na Facebooku predstavili Apache Hive pre spracovanie dát v Hadoop Cluster. Facebook bol prvou spoločnosťou, ktorá prišla s Apache Hive.

Príbeh Apache HBase sa začína v roku 2006, keď sa Powerset so spustením v San Franciscu snažil vytvoriť webový vyhľadávací stroj s prirodzeným jazykom. HBase je implementácia aplikácie Bigtable spoločnosti Google. Uvedomili sme si niekedy, prečo bolo potrebné prísť s ďalšou architektúrou úložiska? Systém správy relačných databáz existuje už od začiatku sedemdesiatych rokov. Existuje mnoho prípadov použitia, pre ktoré relačné databázy úplne dávajú zmysel, ale pre niektoré špecifické problémy sa relačný model veľmi dobre nehodí.

Dovoľte mi podrobnejšie vysvetliť informácie o Apache Hive a Apache HBase.

Rozdiely medzi Apache Hive a Apache HBase

Apache Hive je open-source projekt Apache postavený na vrchole Hadoopu na dotazovanie, sumarizáciu a analýzu veľkých súborov údajov pomocou rozhrania podobného SQL. Apache Hive poskytuje jazyk podobný SQL s názvom HiveQL, ktorý transparentne prevádza dotazy na MapReduce na vykonávanie na veľkých množinách údajov uložených v systéme Hadoop Distributed File System (HDFS). Apache Hive je komponent klastra Hadoop, ktorý bežne používajú analytici údajov. Úľ Apache sa používa na dávkové spracovanie veľkých úloh ETL. Apache Hive tiež podporuje dávkové dotazy SQL na veľmi veľké množiny údajov. Apache Hive zvyšuje flexibilitu pri návrhu schémy a tiež serializáciu a deserializáciu údajov. Apache Hive nepodporuje spracovanie online transakcií (OLTP), pretože úľ nepodporuje dotazy v reálnom čase a na úrovni riadkov.

Apache HBase je otvorená zdrojová databáza NoSQL, ktorá poskytuje prístup k veľkým súborom údajov v reálnom čase, na čítanie a zápis. NoSQL je nerelačná databáza. Apache HBase je distribuovaná stĺpcovo orientovaná databáza, ktorá beží nad Hadoop Distributed File System (HDFS). HBase prináša spoločnosti Hadoop výhody NoSQL. Apache HBase poskytuje možnosti náhodného prístupu k údajom prítomným v HDFS. Využíva toleranciu chýb poskytovanú HDFS. Užívateľ môže ukladať údaje v HDFS buď priamo, alebo prostredníctvom HBase.

Porovnanie Head to Head medzi Apache Hive vs Apache HBase (Infographics)

Nižšie je uvedený 12 najlepších rozdielov medzi Apache Hive a Apache HBase

Kľúčové rozdiely - Apache Hive vs Apache HBase

Nižšie sú uvedené zoznamy bodov, opíšte kľúčové rozdiely medzi Apache Hive a Apache HBase:

  • Apache HBase je databáza, zatiaľ čo Apache Hive je databázový stroj.
  • Apache Hive sa používa hlavne na dávkové spracovanie (OLAP), zatiaľ čo Apache HBase sa používa hlavne na transakčné spracovanie (OLTP).
  • Apache Hive vykonáva väčšinu dotazov SQL, zatiaľ čo Apache HBase neumožňuje dotazy SQL priamo.
  • Apache Hive nepodporuje operácie na úrovni záznamu, ako je aktualizácia, vloženie a vymazanie, zatiaľ čo Apache HBase podporuje operácie na úrovni záznamu, ako je aktualizácia, vloženie a vymazanie.
  • Apache Hive beží na MapReduce, zatiaľ čo Apache HBase beží na Hadoop Distributed File System (HDFS).

Apache Hive spytuje súbory definovaním virtuálnej tabuľky a spustením dotazov HQL nad ňou. Je to proces, v ktorom sú súbory virtuálne spojené s tabuľkou, ako je štruktúra, a používateľ môže spustiť Hive Query Language (HQL) a tieto dotazy sú konvertované do MapReduce Job by Hive. Užívateľ nemusí písať úlohu MapReduce, dotazy HQL sú interne konvertované do súborov jar a tieto súbory jar budú implementované do množín údajov.

V Apache HBase sú tabuľky rozdelené do regiónov a obsluhujú ich regionálne servery. Ďalšie oblasti sú vertikálne rozdelené stĺpcami do obchodov a obchody sa ukladajú ako súbory v HDFS.

Kedy používať Apache Hive:

  • Požiadavky na skladovanie údajov
  • Analytické otázky
  • Analýza dát, ktorí sú oboznámení s SQL

Kedy použiť Apache HBase:

  • Rýchle a interaktívne spracovanie údajov
  • Dotazy v reálnom čase
  • Rýchle vyhľadávanie
  • Spracovanie na strane servera
  • Náhodný prístup na čítanie / zápis do veľkých dát
  • Škálovateľnosť aplikácií

Apache Hive sa dá použiť na výpočet trendov a protokolov webovej stránky elektronického obchodu pre konkrétne trvanie, región alebo časové pásmo. Môže byť použitý na spracovanie dávkového dotazu na historické údaje, zatiaľ čo Apache HBase môže byť používaný Facebookom alebo LinkedIn na zasielanie správ a analýzu v reálnom čase. Môže sa tiež použiť na počítanie hodnotení Páči sa mi.

Porovnávacia tabuľka Apache Hive vs Apache HBase

Diskutujem o hlavných artefaktoch a rozlišujem medzi Apache Hive a Apache HBase.

Úľ ApacheApache HBase
Spracovanie dátApache Hive sa používa

dávkové spracovanie, tj online analytické spracovanie (OLAP)

Apache HBase sa používa na transakčné spracovanie, tj online transakčné spracovanie (OLTP)
Rýchlosť spracovaniaApache Hive má vyššiu latenciu kvôli vykonaniu úlohy MapReduce na pozadíApache HBase pracuje na dotazovaní v reálnom čase a oveľa rýchlejšie ako Apache Hive
Kompatibilita s HadoopApache Hive beží na MapReduceApache HBase beží na vrchole HDFS
definíciaApache Hive je open source a podobný SQL používanému pre analytické dotazyApache HBase je otvorená zdrojová databáza NoSQL používaná na dotazovanie v reálnom čase
Zdieľané metadátaÚdaje vytvorené v Apache Hive sú Apache HBase automaticky viditeľnéÚdaje vytvorené v Apache HBase sú automaticky viditeľné pre Apache Hive
schémaPodregister Apache podporuje schému na vkladanie údajov do tabuliekApache HBase je databáza bez schém.
Aktualizovať funkciuFunkcia aktualizácie je v Apache Hive zložitáUžívateľ môže veľmi ľahko aktualizovať dáta v Apache HBase
operácieOperácie v Apache Hive nebeží v reálnom časeOperácie v Apache HBase prebiehajú v reálnom čase
Typy údajovApache Hive je určený pre štruktúrované a pološtrukturované dátaApache HBase je určený pre neštruktúrované údaje.
Úroveň konzistencieÚľ Apache podporuje prípadnú konzistenciuApache HBase podporuje okamžitú konzistenciu
Metódy rozdeleniaApache Hive podporuje funkcie ShardingApache HBase tiež podporuje funkcie Sharding
Úložisko dátDátum je uložený v Hive Metastore, Partitions and Buckets v Apache HiveÚdaje sú uložené v stĺpcoch a riadkoch tabuliek v Apache HBase

Záver - Apache Hive vs Apache HBase

Bežne sa Apache Hive verzus Apache HBase používa spolu v rovnakom klastri. Obidve môžu byť použité spolu na zvýšenie výkonu spracovania. Pretože úľ zlepšuje analytické stránky HDFS, zatiaľ čo HBase zlepšuje transakcie v reálnom čase. Užívateľ môže použiť Hive ako nástroj ETL na dávkové vkladanie údajov s údajmi do HBase a potom na vykonávanie dotazov, ktoré môžu ďalej spájať údaje prítomné v tabuľkách HBase s údajmi, ktoré už sú prítomné na HDFS. Dáta je možné čítať a zapisovať z Apache Hive do HBase a späť. Rozhranie medzi Apache Hive a Apache HBase je stále vo fáze zrenia. Je tu oveľa viac. Napriek tomu môžem povedať, že Apache Hive verzus Apache HBase robí cluster Hadoop robustnejším a výkonnejším.

Súvisiace články:

Toto bol návod pre Apache Hive verzus Apache HBase, ich význam, porovnanie hlava-hlava, kľúčové rozdiely, porovnávacia tabuľka a záver. Ďalšie informácie nájdete aj v nasledujúcich článkoch -

  • Top 5 veľkých dátových trendov
  • 5 Výzvy analýzy veľkých dát
  • Ako rozlúštiť rozhovor pre vývojárov Hadoop?
  • 5 Výzvy analýzy veľkých dát

Kategórie: