Rozdíl mezi úlem a impalou

Hive je softwarový projekt datového skladu postavený na vrcholu APACHE HADOOP vyvinutého týmem Jeffa na Facebooku s vydanou aktuální stabilní verzí 2.3.0. Používá se pro shrnutí velkých dat a usnadňuje dotazování a analýzu. Apache Hive je efektivní standard pro SQL-in Hadoop. Impala je paralelní procesor pro zpracování dotazů SQL, který běží na Apache Hadoop a používá se ke zpracování dat uložených v HBase (Hadoop Database) a Hadoop Distributed File System. Impala je produkt s otevřeným zdrojovým kódem pro dotazovací stroj SQL s paralelním zpracováním (MPP) pro data uložená v lokálním systémovém clusteru spuštěném na Apache Hadoop. Apache Hive a Impala jsou klíčovými součástmi systému Hadoop.

Pojďme tedy podrobně prostudovat Hive i Impala:

ÚL

  • Apache Hive pomáhá při analýze obrovského souboru dat uloženého v systému souborů Hadoop (HDFS) a dalších kompatibilních systémech souborů.
  • Hive QL - Pro dotazování dat uložených v Hadoop Clusteru .
  • Využívá škálovatelnost Hadoopu překladem .
  • Úl NENÍ úplnou databází .
  • Neposkytuje aktualizace na úrovni záznamu .
  • Hadoop je dávkově orientovaný systém .
  • Dotazy podregistru mají vysokou latenci kvůli MapReduce .
  • Úl neposkytuje funkce Je v blízkosti OLAP .
  • Nejvhodnější pro aplikace datových skladů .
  • Provádění dotazů pomocí MapReduce .
  • dotazovací jazyk lze použít s vlastními skalárními funkcemi (UDF), agregacemi (UDAF) a tabulkovými funkcemi (UDTF) .
  • Úl také poskytuje indexování pro zrychlení, typ indexu včetně kompakce a bitmapový index od 0, 10, jsou plánovány další typy indexů.
  • Typy úložišť podporovaných Hive jsou RCfile, HBase, ORC a Plain text .
  • Dotazy typu SQL (Hive QL), které jsou implicitně převedeny na úlohy MapReduce nebo Tez nebo Spark .
  • Ve výchozím nastavení Hive ukládá metadata do vestavěné databáze Apache Derby .

IMPALA

  • Impala je vyhledávací stroj, který běží na Hadoopu . Distribuce veřejné beta verze byla vyhlášena v říjnu 2012 a byla obecně k dispozici v květnu 2013.
  • Podporuje úložiště HDFS Apache HBase a Amazon S3 .
  • Čte formáty souborů Hadoop, včetně textových, parketových, Avro, RCFile, LZO a sekvenčních souborů .
  • Podporuje zabezpečení Hadoop (ověřování Kerberos) .
  • Používá metadata, ovladač ODBC a syntaxi SQL z Apache Hive .
  • Podporuje více kodeků komprese:

a) Snappy (doporučeno pro jeho efektivní rovnováhu mezi kompresním poměrem a rychlostí dekomprese),

(b) Gzip (doporučeno při dosažení nejvyšší úrovně komprese),

(c) Deflate (není podporováno pro textové soubory), Bzip2, LZO (pouze pro textové soubory);

  • Umožňuje dotazovat vnořené struktury včetně map, struktur a polí.
  • Umožňuje souběžné dotazy pro více uživatelů a také umožňuje řízení přístupu na základě stanovení priorit a řazení do front.

Srovnání hlava-hlava mezi úlem a impalou (infografika)

Níže je 20 nejlepších srovnání mezi Úlem a Impalou

Klíčový rozdíl mezi úlem a impalou

Rozdíly mezi Úlem a Impalou jsou vysvětleny v následujících bodech:

  • Hive je vyvinut týmem Jeff na Facebooku, ale Impala je vyvinuta Apache Software Foundation .
  • Podregistr podporuje formát souboru Optimalizovaný sloupcový formát řádků (ORC) s kompresí Zlib, ale Impala podporuje formát Parquet s rychlou kompresí .
  • Úl je psán v Javě, ale Impala je psán v C ++.
  • Rychlost zpracování dotazů v Hive je pomalá, ale Impala je 6-69krát rychlejší než Hive .
  • V úlu je latence vysoká, ale v Impale je latence nízká .
  • Podregistr podporuje ukládání souborů RC a ORC, ale úložiště Impala je Hadoop a Apache HBase .
  • Úl generuje výraz dotazu při kompilaci, ale při generování kódu Impala pro velké smyčky dochází během běhu .
  • Úl nepodporuje paralelní zpracování, ale Impala podporuje paralelní zpracování.
  • Podregistr podporuje MapReduce, ale Impala nepodporuje MapReduce .
  • V Hive neexistuje žádná funkce zabezpečení, ale Impala podporuje ověřování Kerberos .
  • V upgradu jakéhokoli projektu, kde je důležitá kompatibilita a rychlost, je Hive ideální volbou, ale pro nový projekt je Impala ideální volbou .
  • Úl je odolný vůči poruchám, ale Impala nepodporuje odolnost proti chybám .
  • Úl podporuje složitý typ, ale Impala nepodporuje složité typy .
  • Úl je dávkově založený Hadoop MapReduce, ale Impala je databáze MPP .
  • Úl nepodporuje interaktivní výpočetní techniku, ale Impala podporuje interaktivní výpočetní techniku .
  • Dotaz na podregistr má problém s „studeným startem“, ale v Impala je proces démona spuštěn v době spuštění .
  • Správce zdrojů podregistru je YARN (ještě další prostředek pro vyjednávání zdrojů), ale v Impala je správce zdrojů nativní * YARN .
  • Distribuce úlů jsou všechna distribuce Hadoop, Hortonworks (Tez, LLAP), ale v Impala distribuci jsou Cloudera MapR (* Amazon EMR) .
  • Úlové publikum jsou Data Engineers, ale v Impale jsou Data Analyst / Data vědci.
  • Propustnost úlu je vysoká, ale v Impale je propustnost nízká .

Srovnávací tabulka Hive vs Impala

Sériové čísloZáklad pro srovnáníÚlImpala
1.VyvinutoFacebookSoftware Apache
Nadace
2.Formát souboru
  • Soubor sekvence.
  • Textový soubor.
  • Optimalizovaný formát sloupcového řádku (ORC) s kompresí Zlib.
  • Formát souboru RC.
  • Parketový formát s elegantní kompresí.
  • Avro
  • LZO
  • Soubor sekvence.
3.JazykNapsáno v JAVANapsáno v C ++
4.Rychlost zpracováníÚl je pomalýImpala je rychlá
5.LatenceVysokýNízký
6.Podpora úložištěRC soubor, ORCHadoop, Apache HBase
7.Převod kóduGeneruje výraz dotazu při kompilaciGenerování kódu probíhá za běhu.
8.Podporuje paralelní zpracováníNeAno
9.Podpora MapReduceAnoNe
10.Hadoop SecurityNePodporuje ověřování Kerberos.
11.PoužíváníIdeální pro upgradu projektuIdeální pro zahájení nového projektu.
12.Tolerantní k chybámÚl toleruje chyby.Nepodporuje odolnost proti poruchám.
13.Složité typyÚl podporuje složité typy.Impala nepodporuje složité typy.
14.Typ databázeHive je Hadoop MapReduce založený na dávce.Jedná se o databázi MPP
15.Interaktivní výpočetní technikaNepodporuje interaktivní práci s počítačem.Podporuje interaktivní práci na počítači.
16.ProvedeníDotaz podregistru má problém s „studeným startem“Impala proces vždy začíná v Boot-time of Daemons.
17.Správa zdrojůPŘÍZENativní * YARN
18.DistribuceHIVE - všechny distribuce Hadoop, Hortonworks (Tez, LLAP)Cloudera MapR,
(* Amazon EMR)
19.PublikumDatoví inženýřiData Analyst / Data Scientists
20.PropustnostVysoká propustnostNízká propustnost

Závěr - Úl vs Impala

V tomto článku jsme se pokusili ukázat, že to, co jsou dvě technologie, konkrétně Hive a Impala, jsou také základní rozdíl mezi těmito technologiemi. Z praktického hlediska lze říci, že Hive a Impala nejsou konkurenty, které oba patří do stejného základu známého jako MapReduce pro provádění dotazů, použití obou může způsobit rozdíl. Podle naší potřeby můžeme použít společně nebo nejlépe podle kompatibility, potřeby a výkonu. Dotazovací jazyk Hive je Hive QL, což je velmi univerzální a univerzální jazyk, zatímco Impala je náročná na paměť a nepracuje dobře pro zpracování těžkých datových operací, například dotazů na spojení. Pokud je ve vašem projektu práce spojena s dávkovým zpracováním velkého množství dat, Úl v tom případě bude lepší a pokud vaše práce souvisí s procesem ad-hoc dotazu na data v reálném čase, bude Impala lepší v ten případ.

Doporučený článek

To byl průvodce po Hive Vs Impala, jejich významu, porovnání hlava-hlava, hlavní rozdíly, srovnávací tabulka a závěr. Další informace naleznete také v následujících článcích -

  1. Apache Hive vs Apache Spark SQL - 13 úžasných rozdílů
  2. Úl VS HUE - Top 6 užitečných srovnání, které se naučíte
  3. Apache Pig vs Apache Hive - Top 12 užitečných rozdílů
  4. Hadoop vs Hive - Zjistěte nejlepší rozdíly
  5. Použití funkce OBJEDNÁVKA BY v Úlu

Kategorie: