Skillnaden mellan Hive och Impala

Hive är ett mjukvaruprojekt för datalager byggt på toppen av APACHE HADOOP utvecklat av Jeffs team på Facebook med en nuvarande stabil version av 2.3.0 släppt. Det används för att sammanfatta Big data och gör enkla frågor och analys. Apache Hive är en effektiv standard för SQL-in Hadoop. Impala är en parallellbearbetande SQL-frågemotor som körs på Apache Hadoop och använder för att bearbeta data som lagras i HBase (Hadoop Database) och Hadoop Distribuerade filsystem. Impala är en öppen källkodsprodukt för SQL-sökmotor för parallellbehandling (MPP) för data lagrade i ett lokalt systemkluster som körs på Apache Hadoop. Apache Hive och Impala är båda viktiga delar i Hadoop-systemet.

Så låt oss studera både Hive och Impala i detalj:

BIKUPA

  • Apache Hive hjälper till med att analysera den enorma datasatsen som är lagrad i Hadoop-filsystemet (HDFS) och andra kompatibla filsystem.
  • Hive QL - För frågeställningar lagrade i Hadoop Cluster .
  • Utnyttjar skalbarheten av Hadoop genom översättning .
  • Hive är INTE en fullständig databas .
  • Det ger inte uppdateringar på postnivå .
  • Hadoop är ett batchorienterat system .
  • Hivefrågor har hög latens på grund av MapReduce .
  • Hive tillhandahåller inte funktioner i It är nära OLAP .
  • Bäst lämpad för datalagerapplikationer .
  • Frågeställning via MapReduce .
  • frågespråk kan användas med anpassade skalfunktioner (UDF: er), aggregeringar (UDAF: er) och tabellfunktioner (UDTF: er) .
  • Hive tillhandahåller också indexering för att påskynda, indextyp inklusive komprimering och bitmappsindex från 0, 10, fler indextyper planeras.
  • Lagringstyper som stöds av Hive är RCfile, HBase, ORC och Plain text .
  • SQL-liknande frågor (Hive QL), som implicit konverteras till MapReduce eller Tez, eller Spark-jobb .
  • Som standard lagrar Hive metadata i en inbäddad Apache Derby-databas .

IMPALAANTILOP

  • Impala är en sökmotor som kör på Hadoop . Den offentliga beta-testdistributionen tillkännagavs i oktober 2012 och blev allmänt tillgänglig i maj 2013.
  • Det stöder HDFS Apache HBase-lagring och Amazon S3 .
  • Läser Hadoop-filformat, inklusive text-, parkett-, Avro-, RCFile-, LZO- och Sequence-fil .
  • Stöder Hadoop Security (Kerberos-autentisering) .
  • Använder metadata, ODBC-drivrutin och SQL-syntax från Apache Hive .
  • Det stöder flera komprimeringskodek:

(a) Snappy (rekommenderas för dess effektiva balans mellan kompressionsförhållande och dekomprimeringshastighet),

(b) Gzip (rekommenderas när du uppnår den högsta kompressionsnivån),

(c) Deflate (stöds inte för textfiler), Bzip2, LZO (endast för textfiler);

  • Det låter dig fråga om kapslade strukturer inklusive kartor, strukturer och matriser.
  • Det tillåter samtidiga frågor med flera användare och möjliggör också antagningskontroll på grundval av prioritering och kö i frågor.

Jämförelser mellan Hive och Impala (Infographics)

Nedan visas de 20 bästa jämförelserna mellan Hive och Impala

Nyckelskillnaden mellan Hive vs Impala

Skillnaderna mellan Hive vs Impala förklaras i punkter som presenteras nedan:

  • Hive är utvecklad av Jeffs team på Facebook men Impala är utvecklat av Apache Software Foundation .
  • Hive stöder filformat i Optimized row columnar (ORC) -format med Zlib-komprimering, men Impala stöder parkettformatet med snappy komprimering .
  • Hive är skriven i Java men Impala är skriven i C ++.
  • Frågan om behandlingshastighet i Hive är långsam men Impala är 6-69 gånger snabbare än Hive .
  • I Hive Latency är hög men i Impala Latency är låg .
  • Hive stöder lagring av RC-fil och ORC men Impala- lagringsstöd är Hadoop och Apache HBase .
  • Hive genererar frågauttryck vid sammanställningstid men i Impala-kodgenerering för '' stora slingor '' sker under körning .
  • Hive stöder inte parallellbehandling men Impala stöder parallellbehandling.
  • Hive stöder MapReduce men Impala stöder inte MapReduce .
  • I Hive finns det ingen säkerhetsfunktion men Impala stöder Kerberos Authentication .
  • I en uppgradering av alla projekt där kompatibilitet och hastighet båda är viktiga är Hive ett idealiskt val men för ett nytt projekt är Impala det ideala valet .
  • Hive är fel tolerant men Impala stöder inte feltolerans .
  • Hive stöder komplex typ men Impala stöder inte komplexa typer .
  • Hive är batchbaserad Hadoop MapReduce men Impala är MPP-databas .
  • Hive stöder inte interaktiv datorverksamhet men Impala stöder interaktiv datoranvändning .
  • Hivefrågan har ett problem med "kallstart", men i Impala-daemonprocessen startas vid själva starttiden .
  • Hive- resurschef är YARN (Ytterligare en resursförhandlare) men i Impala är resurshanteraren * YARN .
  • Hive Distribution är alla Hadoop distribution, Hortonworks (Tez, LLAP) men i Impala distribution är Cloudera MapR (* Amazon EMR) .
  • Hive publik är Data Engineers men i Impala publik är Data Analyst / Data forskare.
  • Hive- genomströmning är hög, men i Impala är genomströmningen låg .

Hive vs Impala jämförelsetabell

Serienummer.Grund för jämförelseBikupaImpala
1.Utvecklad avFacebookApache-programvara
fundament
2.Filformat
  • Sekvensfil.
  • Textfil.
  • Optimerat rad columnar (ORC) format med Zlib-komprimering.
  • RC-filformat.
  • Parkettformat med snappy komprimering.
  • Avro
  • LZO
  • Sekvensfil.
3.SpråkSkrivet i JAVASkrivet i C ++
4.BearbetningshastighetHive är långsamImpala är snabb
5.LatensHögLåg
6.LagringsstödRC-fil, ORCHadoop, Apache HBase
7.KodkonverteringGenererar frågauttryck vid kompileringstidKodgenerering sker vid körning.
8.Stödjer parallellbehandlingNejJa
9.MapReduce supportJaNej
10.Hadoop SecurityNejStöder Kerberos-autentisering.
11.AnvändandeIdealisk för projektuppgraderingPerfekt för att starta nytt projekt.
12.FeltolerantHive är feltolerant.Stödjer inte feltolerans.
13.Komplexa typerHive stöder komplexa typer.Impala stöder inte komplexa typer.
14.DatabastypHive är en batch-baserad Hadoop MapReduce.Det är MPP-databas
15.Interaktiv datorStödjer inte interaktiv datoranvändning.Stödjer interaktiv datoranvändning.
16.AvrättningHivefrågan har problem med "Cold Start"Impala-processen startar alltid vid Daemons starttid.
17.ResurshanteringGARNNative * YARN
18.distributionerHIVE - alla Hadoop-distributioner, Hortonworks (Tez, LLAP)Cloudera MapR,
(* Amazon EMR)
19.PublikDataingenjörerDataanalytiker / datavetare
20.genomströmningHög kapacitetLåg genomströmning

Slutsats - Hive vs Impala

I den här artikeln har vi försökt visa upp vad som är två tekniker, nämligen Hive och Impala, och även den grundläggande skillnaden mellan dessa tekniker. I praktiska termer kan vi säga att Hive och Impala inte är de konkurrenter som de båda tillhör samma stiftelse som kallas MapReduce för att utföra frågorna, användningen av båda kan skapa skillnaden. Enligt vårt behov kan vi använda det tillsammans eller bäst enligt kompatibilitet, behov och prestanda. Hivefrågespråk är Hive QL som är mycket mångsidigt och universellt språk medan Impala är minnesintensivt och inte fungerar bra för bearbetning av tunga dataoperationer, t.ex. Om ditt projekt är relaterat till batchbehandling för en stor mängd data, kommer Hive att bli bättre i det fallet och om ditt arbete är relaterat till realtidsprocessen för en ad hoc-fråga om data, kommer Impala att bli bättre i så fall.

Rekommenderad artikel

Detta har varit en guide till Hive mot Impala, deras betydelse, jämförelse mellan huvud och huvud, viktiga skillnader, jämförelsetabell och slutsats. Du kan också titta på följande artiklar för att lära dig mer -

  1. Apache Hive vs Apache Spark SQL - 13 fantastiska skillnader
  2. Hive VS HUE - Topp 6 användbara jämförelser att lära sig
  3. Apache Pig vs Apache Hive - Topp 12 användbara skillnader
  4. Hadoop vs Hive - Ta reda på de bästa skillnaderna
  5. Använda ORDER BY-funktion i Hive

Kategori: