Forskellen mellem Hive og Impala

Hive er et datalager-softwareprojekt bygget oven på APACHE HADOOP udviklet af Jeff's team på Facebook med en nuværende stabil version af 2.3.0 frigivet. Det bruges til at opsummere Big data og gør forespørgsel og analyse let. Apache Hive er en effektiv standard til SQL-i Hadoop. Impala er en parallel behandlende SQL-forespørgselsmotor, der kører på Apache Hadoop og bruges til at behandle de data, der lagres i HBase (Hadoop Database) og Hadoop Distribueret filsystem. Impala er et open source-produkt til parallel behandling (MPP) SQL-forespørgselsmotor til data, der er gemt i en lokal systemklynge, der kører på Apache Hadoop. Apache Hive og Impala er begge centrale dele af Hadoop-systemet.

Så lad os studere både Hive og Impala i detaljer:

HIVE

  • Apache Hive hjælper med at analysere det enorme datasæt, der er gemt i Hadoop-filsystemet (HDFS) og andre kompatible filsystemer.
  • Hive QL - Til forespørgsel om data, der er gemt i Hadoop Cluster .
  • Udnytter skalopbarheden af ​​Hadoop ved oversættelse .
  • Hive er IKKE en komplet database .
  • Det indeholder ikke opdateringer på rekordniveau .
  • Hadoop er et batchorienteret system .
  • Hiveforespørgsler har høj latenstid på grund af MapReduce .
  • Hive indeholder ikke funktioner i It er tæt på OLAP .
  • Bedst egnet til datavarehusapplikationer .
  • Forespørgseludførelse via MapReduce .
  • forespørgselssprog kan bruges med brugerdefinerede skalarfunktioner (UDF'er), aggregeringer (UDAF'er) og tabelfunktioner (UDTF'er) .
  • Hive giver også indeksering for at accelerere, indeksetype inklusive komprimering og bitmap-indeks fra 0, 10, flere indekstyper er planlagt.
  • Lagringstyper, der understøttes af Hive, er RCfile, HBase, ORC og Plain text .
  • SQL-lignende forespørgsler (Hive QL), som implicit konverteres til MapReduce eller Tez eller Spark-job .
  • Som standard gemmer Hive metadata i en integreret Apache Derby-database .

IMPALA

  • Impala er en forespørgselsmotor, der kører på Hadoop . Den offentlige beta-testdistribution blev annonceret i oktober 2012 og blev generelt tilgængelig i maj 2013.
  • Det understøtter HDFS Apache HBase-lager og Amazon S3 .
  • Læser Hadoop-filformater, herunder tekst- , parket-, Avro-, RCFile-, LZO- og Sequence-fil .
  • Understøtter Hadoop Security (Kerberos-godkendelse) .
  • Bruger metadata, ODBC-driver og SQL-syntaks fra Apache Hive .
  • Det understøtter flere komprimeringskodeker:

(a) Snappy (anbefales for dets effektive balance mellem kompressionsforhold og dekompressionshastighed),

(b) Gzip (anbefales ved opnåelse af det højeste niveau af komprimering),

(c) Deflate (understøttes ikke for tekstfiler), Bzip2, LZO (kun for tekstfiler);

  • Det giver dig mulighed for at forespørge om indlejrede strukturer, herunder kort, strukturer og matriser.
  • Det giver mulighed for samtidige forespørgsler til flere brugere og tillader også adgangskontrol på grundlag af prioritering og kø i forespørgsler.

Sammenligninger fra hoved mod hoved mellem Hive vs Impala (Infografik)

Nedenfor er Top 20-sammenligningen mellem Hive vs Impala

Den vigtigste forskel mellem Hive vs Impala

Forskellene mellem Hive vs Impala er forklaret i punkter præsenteret nedenfor:

  • Hive er udviklet af Jeff's team på Facebook, men Impala er udviklet af Apache Software Foundation .
  • Hive understøtter filformat i ORC-format (Optimized row columnar) med Zlib-komprimering, men Impala understøtter parketformatet med snappy komprimering .
  • Hive er skrevet i Java, men Impala er skrevet i C ++.
  • Forespørgselsbehandlingshastigheden i Hive er langsom, men Impala er 6-69 gange hurtigere end Hive .
  • I Hive Latency er høj, men i Impala er Latency lav .
  • Hive understøtter lagring af RC-fil og ORC, men Impala- lagringsstøtter er Hadoop og Apache HBase .
  • Hive genererer forespørgseludtryk på kompileringstidspunktet, men i Impala-kodegenerering for '' store loops '' sker der under kørsel .
  • Hive understøtter ikke parallel behandling, men Impala understøtter parallel behandling.
  • Hive understøtter MapReduce, men Impala understøtter ikke MapReduce .
  • I Hive er der ingen sikkerhedsfunktion, men Impala understøtter Kerberos-godkendelse .
  • I en opgradering af ethvert projekt, hvor kompatibilitet og hastighed begge er vigtige, er Hive et ideelt valg, men for et nyt projekt er Impala det ideelle valg .
  • Hive er fejltolerant, men Impala understøtter ikke fejltolerance .
  • Hive understøtter kompleks type, men Impala understøtter ikke komplekse typer .
  • Hive er batchbaseret Hadoop MapReduce, men Impala er MPP-database .
  • Hive understøtter ikke interaktiv computing, men Impala understøtter interaktiv computing .
  • Hiveforespørgsel har et problem med "kold start", men i Impala-dæmonprocessen startes ved selve starttiden .
  • Hive resource manager er YARN (endnu en anden ressourceforhandler), men i Impala er resource manager native * YARN .
  • Hive- distributioner er alle Hadoop-distribution, Hortonworks (Tez, LLAP), men i Impala-distributionen er Cloudera MapR (* Amazon EMR) .
  • Hive-publikum er Data Engineers, men i Impala-publikum er Data Analyst / Data-forskere.
  • Hive- gennemstrømning er høj, men i Impala er gennemstrømningen lav .

Sammenligningstabel Hive vs Impala

Serienr.Grundlag for sammenligninghiveImpala
1.Udviklet afFacebookApache-software
Fundament
2.Filformat
  • Sekvensfil.
  • Tekstfil.
  • Optimeret række columnar (ORC) format med Zlib-komprimering.
  • RC-filformat.
  • Parketformat med snappy komprimering.
  • Avro
  • LZO
  • Sekvensfil.
3.SprogSkrevet i JAVASkrevet i C ++
4.BehandlingshastighedHive er langsomImpala er hurtig
5.ReaktionstidHøjLav
6.Opbevaring supportRC-fil, ORCHadoop, Apache HBase
7.Kode konverteringGenererer forespørgseludtryk på kompileringstidspunktetGenerering af kode sker ved kørsel.
8.Understøtter parallel behandlingIngenJa
9.MapReduce supportJaIngen
10.Hadoop SecurityIngenUnderstøtter Kerberos-godkendelse.
11.AnvendelseIdeel til opgradering af projektetIdeel til start af nyt projekt.
12.Fejl tolerantHive er fejltolerant.Understøtter ikke fejltolerance.
13.Komplekse typerHive understøtter komplekse typer.Impala understøtter ikke komplekse typer.
14.DatabasetypeHive er et batch-baseret Hadoop MapReduce.Det er MPP-database
15.Interaktiv computingUnderstøtter ikke interaktiv computing.Understøtter interaktiv computing.
16.UdførelseHiveforespørgsel har et problem med “Cold Start”Impala-processen starter altid ved Daemons boot-tid.
17.RessourcestyringgarnIndfødt * Garn
18.FordelingerHIVE - alle Hadoop-distributioner, Hortonworks (Tez, LLAP)Cloudera MapR,
(* Amazon EMR)
19.PublikumDataingeniørerDataanalytiker / dataforskere
20.gennemløbHøj gennemstrømningLav gennemstrømning

Konklusion - Hive vs Impala

I denne artikel har vi forsøgt at vise, at hvad der er to teknologier, nemlig Hive og Impala, og også den grundlæggende forskel mellem disse teknologier. Rent praktisk kan vi sige, at Hive og Impala ikke er de konkurrenter, de begge tilhører det samme fundament, der kaldes MapReduce til udførelse af forespørgsler, brugen af ​​begge kan skabe forskellen. Efter vores behov kan vi bruge det sammen eller bedst i henhold til kompatibilitet, behov og ydeevne. Hive-forespørgselssprog er Hive QL, som er meget alsidig og universelt sprog, mens Impala er hukommelseskrævende og ikke fungerer godt til behandling af tunge datafunktioner, f.eks. Hvis i dit projekt arbejde er relateret til batchbehandling for en stor mængde data, vil Hive bedre i dette tilfælde, og hvis dit arbejde er relateret til realtidsprocessen med en ad-hoc forespørgsel om data, vil Impala være bedre i den sag.

Anbefalet artikel

Dette har været en guide til Hive mod Impala, deres betydning, sammenligning mellem hoved og hoved, nøgleforskelle, sammenligningstabel og konklusion. Du kan også se på de følgende artikler for at lære mere -

  1. Apache Hive vs Apache Spark SQL - 13 fantastiske forskelle
  2. Hive VS HUE - Top 6 nyttige sammenligninger at lære
  3. Apache Pig vs Apache Hive - Top 12 nyttige forskelle
  4. Hadoop vs Hive - Find ud af de bedste forskelle
  5. Brug af ORDER BY-funktion i Hive

Kategori: