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 primerjavo | Panj | Impala |
1. | Razvil | Apache Software Fundacija |
|
2 | Oblika datoteke |
|
|
3. | Jezik | Napisano v JAVA | Napisano v jeziku C ++ |
4. | Hitrost obdelave | Panj je počasen | Impala je hitra |
5. | Zamuda | Visoka | Nizka |
6. | Podpora za shranjevanje | RC datoteka, ORC | Hadoop, Apache HBase |
7. | Pretvorba kode | Ustvari poizvedbeni izraz v času prevajanja | Generacija kode se zgodi med izvajanjem. |
8. | Podpira vzporedno obdelavo | Ne | Da |
9. | Podpora za MapReduce | Da | Ne |
10. | Hadoop Varnost | Ne | Podpira Kerberos Authentication. |
11. | Uporaba | Idealno za nadgradnjo projektov | Idealno za začetek novega projekta. |
12. | Napačno odporen | Panj je toleranten za napake. | Ne podpira napak. |
13. | Kompleksne vrste | Panj podpira zapletene vrste. | Impala ne podpira kompleksnih vrst. |
14. | Vrsta baze podatkov | Hive je serijska Hadoop MapReduce. | To je baza podatkov MPP |
15. | Interaktivno računalništvo | Ne podpira interaktivnega računalništva. | Podpira interaktivno računalništvo. |
16. | Izvedba | Poizvedba v panju ima težavo s »hladnim začetkom« | Postopek Impala se vedno začne v času zagona demonov. |
17. | Upravljanje z viri | PREJ | Matična * PREJ |
18. | Distribucije | HIVE - vse Hadoop distribucije, Hortonworks (Tez, LLAP) | Cloudera MapR, (* Amazon EMR) |
19. | Občinstvo | Podatkovni inženirji | Data Analyst / Data Scientist |
20. | Prepustnost | Visok pretok | Nizka 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 -
- Apache Hive vs Apache Spark SQL - 13 neverjetnih razlik
- Panj VS HUE - top 6 uporabnih primerjav za učenje
- Apache Pig vs Apache Pive - Top 12 uporabnih razlik
- Hadoop vs Hive - odkrijte najboljše razlike
- Uporaba ORDER BY Function v panju