Razlika med Hive in Impala

Hive je programski program za shranjevanje podatkov, ki je bil zgrajen na podlagi APACHE HADOOP, ki ga je razvila Jeffova ekipa na Facebooku s trenutno stabilno različico 2.3.0. Uporablja se za povzemanje velikih podatkov in olajša poizvedovanje in analizo. Apache Hive je učinkovit standard za SQL v Hadoopu. Impala je iskalnik SQL za vzporedno obdelavo, ki deluje na Apache Hadoop in uporablja za obdelavo podatkov, ki se shranijo v HBase (Hadoop Database) in Hadoop Distributed File System. Impala je odprtokodni izdelek za vzporedno obdelavo (MPP) SQL iskalnik za podatke, shranjene v lokalnem sistemskem grozdu, ki deluje na Apache Hadoop. Apache Hive in Impala sta ključna dela sistema Hadoop.

Zato podrobneje preučimo tako Hive kot Impala:

DUH

  • Apache Hive pomaga pri analizi ogromnega nabora podatkov, shranjenega v datotečnem sistemu Hadoop (HDFS) in drugih združljivih datotečnih sistemih.
  • Panj QL - za poizvedovanje podatkov, shranjenih v Hadoop Cluster .
  • S prevodom izkorišča skalabilnost Hadoopa .
  • Panj NI polna baza podatkov .
  • Ne zagotavlja posodobitev na ravni rekordov .
  • Hadoop je sistemsko usmerjen sistem .
  • Poizvedbe o panju imajo velike zamude zaradi MapReduce .
  • Panj ne ponuja lastnosti, so blizu OLAP .
  • Najbolj primeren za aplikacije Data Warehouse .
  • Izvedba poizvedbe prek MapReduce .
  • poizvedbeni jezik lahko uporabljamo s prilagojenimi skalarnimi funkcijami (UDF), združevanjem (UDAF) in funkcijami tabel (UDTF) .
  • Hive ponuja tudi indeksiranje za pospešitev, tip indeksa, vključno z zbijanjem in bitmap indeksom od 0, 10, načrtuje se več vrst indeksov.
  • Vrste shranjevanja, ki jih podpira Hive, so RCfile, HBase, ORC in navadno besedilo .
  • SQL podobnim poizvedbam (Hive QL), ki se implicitno pretvorijo v opravila MapReduce ali Tez ali Spark .
  • Hive privzeto shrani metapodatke v vdelano bazo podatkov Apache Derby .

IMPALA

  • Impala je poizvedbeni motor, ki deluje na Hadoopu . Javna distribucija beta testov je bila objavljena oktobra 2012 in je na splošno na voljo maja 2013.
  • Podpira HDFS Apache HBase storage in Amazon S3 .
  • Bere formate datotek Hadoop, vključno z besedilno , parketno, Avro, RCFile, LZO in sekvenčno datoteko .
  • Podpira Hadoop Varnost (Kerberos overjanje) .
  • Uporablja metapodatke, gonilnik ODBC in sintakso SQL iz Apache Hive .
  • Podpira več kompresijskih kodekov:

(a) Snappy (Priporočljivo za učinkovito razmerje med kompresijskim razmerjem in hitrostjo dekompresije),

(b) Gzip (Priporočljivo pri doseganju najvišje stopnje stiskanja),

(c) odstranjevanje (ni podprto za besedilne datoteke), Bzip2, LZO (samo za besedilne datoteke);

  • Omogoča vam poizvedovanje o ugnezdenih strukturah, vključno z zemljevidi, strukturami in nizi.
  • Omogoča sočasnim poizvedbam več uporabnikov in omogoča tudi nadzor vstopa na podlagi prednostnih nalog in čakalnih vrst.

Primerjava med Hive proti Impala (Infographics)

Spodaj je zgornjih 20 primerjav med Hive proti Impala

Ključna razlika med Hive proti Impala

Razlike med Hive proti Impala so razložene v točkah, predstavljenih spodaj:

  • Hive je razvila Jeffova ekipa na Facebooku, Impala pa razvija Apache Software Foundation .
  • Hive podpira format datoteke optimiziranega stolpca v obliki stolpca (ORC) s kompresijo Zlib, vendar Impala podpira format parketa z naglim stiskanjem .
  • Panj je napisan v Javi, Impala pa v C ++.
  • Hitrost obdelave poizvedb v panju je počasna, vendar je Impala 6-69 krat hitrejša od Hive .
  • Latencija v panju je visoka, v Impali pa je zamuda nizka .
  • Hive podpira shranjevanje datotek RC in ORC, podpora za shranjevanje Impala pa je Hadoop in Apache HBase .
  • Hive generira poizvedbeni izraz v času prevajanja, vendar se pri izvajanju kode Impala za '' velike zanke '' zgodi med izvajanjem .
  • Panj ne podpira vzporedne obdelave, vendar Impala podpira vzporedno obdelavo.
  • Hive podpira MapReduce, vendar Impala ne podpira MapReduce .
  • V Hiveju ni nobene zaščitne funkcije, vendar Impala podpira Kerberos Authentication .
  • Pri nadgradnji katerega koli projekta, pri katerem sta pomembni združljivost in hitrost, je Hive idealna izbira, toda za nov projekt je Impala idealna izbira .
  • Panj je napak, vendar Impala ne podpira napak .
  • Panj podpira kompleksen tip, vendar Impala ne podpira kompleksnih vrst .
  • Hive je serijsko zasnovan Hadoop MapReduce, Impala pa je MPP baza podatkov .
  • Hive ne podpira interaktivnega računalništva, vendar Impala podpira interaktivno računalništvo .
  • Poizvedba v panju ima težavo "hladnega zagona", vendar se v postopku Impala daemon zažene ob samem zagonu .
  • Upravitelj virov pive je YARN (še en pogajalec o sredstvih), pri upravitelju virov Impala pa je izvorni * YARN .
  • Porazdelitve panj so vse Hadoop distribucije, Hortonworks (Tez, LLAP), v Impala distribuciji pa Cloudera MapR (* Amazon EMR) .
  • Skupina panjev je podatkovni inženir, v Impali pa so Analizatorji podatkov.
  • Prepustnost panj je velika, pri Impali pa je majhna .

Hive vs Impala Primerjalna tabela

Serijska številka.Osnove za primerjavoPanjImpala
1.RazvilFacebookApache Software
Fundacija
2Oblika datoteke
  • Zaporedna datoteka.
  • Tekstna datoteka.
  • Optimiziran stolpec v obliki stolpcev (ORC) s kompresijo Zlib.
  • Format datoteke RC.
  • Format parketa z naglim stiskanjem.
  • Avro
  • LZO
  • Zaporedna datoteka.
3.JezikNapisano v JAVANapisano v jeziku C ++
4.Hitrost obdelavePanj je počasenImpala je hitra
5.ZamudaVisokaNizka
6.Podpora za shranjevanjeRC datoteka, ORCHadoop, Apache HBase
7.Pretvorba kodeUstvari poizvedbeni izraz v času prevajanjaGeneracija kode se zgodi med izvajanjem.
8.Podpira vzporedno obdelavoNeDa
9.Podpora za MapReduceDaNe
10.Hadoop VarnostNePodpira Kerberos Authentication.
11.UporabaIdealno za nadgradnjo projektovIdealno za začetek novega projekta.
12.Napačno odporenPanj je toleranten za napake.Ne podpira napak.
13.Kompleksne vrstePanj podpira zapletene vrste.Impala ne podpira kompleksnih vrst.
14.Vrsta baze podatkovHive je serijska Hadoop MapReduce.To je baza podatkov MPP
15.Interaktivno računalništvoNe podpira interaktivnega računalništva.Podpira interaktivno računalništvo.
16.IzvedbaPoizvedba v panju ima težavo s »hladnim začetkom«Postopek Impala se vedno začne v času zagona demonov.
17.Upravljanje z viriPREJMatična * PREJ
18.DistribucijeHIVE - vse Hadoop distribucije, Hortonworks (Tez, LLAP)Cloudera MapR,
(* Amazon EMR)
19.ObčinstvoPodatkovni inženirjiData Analyst / Data Scientist
20.PrepustnostVisok pretokNizka prepustnost

Zaključek - Hive proti Impala

V tem članku smo poskušali pokazati, da sta dve tehnologiji, torej Hive in Impala, in tudi osnovna razlika med temi tehnologijami. Praktično lahko rečemo, da Hive in Impala nista konkurenta, saj oba pripadata isti fundaciji, imenovani MapReduce za izvajanje poizvedb, uporaba obeh pa lahko ustvari razliko. Glede na naše potrebe jih lahko uporabljamo skupaj ali najboljše glede na združljivost, potrebe in uspešnost. Poizvedbeni jezik panj je Hive QL, ki je zelo vsestranski in univerzalen jezik, medtem ko je Impala intenzivno pomnilnik in ne deluje dobro za obdelavo težkih podatkovnih operacij. Če je vaše projektno delo povezano s paketno obdelavo velike količine podatkov, bo v tem primeru panj boljši in če je vaše delo povezano s sprotnim delom ad-hoc poizvedbe o podatkih v realnem času, bo Impala boljša v ta primer.

Priporočeni članek

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

  1. Apache Hive vs Apache Spark SQL - 13 neverjetnih razlik
  2. Panj VS HUE - top 6 uporabnih primerjav za učenje
  3. Apache Pig vs Apache Pive - Top 12 uporabnih razlik
  4. Hadoop vs Hive - odkrijte najboljše razlike
  5. Uporaba ORDER BY Function v panju

Kategorija: