Hive vs Impala

Hive vs Impala

Hive vs Impala

Unterschied zwischen Hive vs Impala

Hive ist ein Data Warehouse-Softwareprojekt, das auf APACHE HADOOP basiert und von Jeffs Team bei Facebook mit einer aktuellen stabilen Version von 2.3.0 entwickelt wurde. Es wird zur Zusammenfassung von Big Data verwendet und erleichtert die Abfrage und Analyse. Apache Hive ist ein effektiver Standard für SQL-in Hadoop. Impala ist eine SQL-Abfrage-Engine für die parallele Verarbeitung, die auf Apache Hadoop ausgeführt wird und zur Verarbeitung der Daten verwendet wird, die in HBase (Hadoop-Datenbank) und Hadoop Distributed File System gespeichert sind. Impala ist ein Open-Source-Produkt für die parallele Verarbeitung (MPP) SQL-Abfrage-Engine für Daten in einem lokalen Systemcluster auf Apache Hadoop gespeichert. Apache Hive und Impala sind beide wichtige Teile des Hadoop-Systems.

Also lasst uns sowohl Hive als auch Impala im Detail studieren:

Starten Sie Ihren kostenlosen Data Science-Kurs

Hadoop, Data Science, Statistik & andere

HIVE

  • Apache Hive hilft bei der Analyse des riesigen Datensatzes, der im Hadoop-Dateisystem (HDFS) und anderen kompatiblen Dateisystemen gespeichert ist.
  • Hive QL – Zum Abfragen von Daten, die im Hadoop-Cluster gespeichert sind.
  • Nutzt die Skalierbarkeit von Hadoop durch Übersetzung.
  • Hive ist KEINE vollständige Datenbank.
  • Es werden keine Aktualisierungen auf Datensatzebene bereitgestellt.
  • Hadoop ist ein Batch-orientiertes System.
  • Hive-Abfragen haben aufgrund von MapReduce eine hohe Latenz.
  • Hive bietet keine Funktionen, die OLAP nahe kommen.
  • Bestens geeignet für Data-Warehouse-Anwendungen.
  • Abfrageausführung über MapReduce.
  • query language kann mit benutzerdefinierten Skalarfunktionen (UDFs), Aggregationen (UDAFS) und Tabellenfunktionen (UDTFS) verwendet werden.
  • Hive bietet auch Indizierung zu beschleunigen, Index-Typ einschließlich Verdichtung und Bitmap-Index ab 0,10 sind weitere Index-Typen geplant.
  • Von Hive unterstützte Speichertypen sind RCfile, HBase, ORC und Plain text.
  • SQL-ähnliche Abfragen (Hive QL), die implizit in MapReduce- oder Tez- oder Spark-Jobs konvertiert werden.
  • Standardmäßig speichert Hive Metadaten in einer eingebetteten Apache Derby-Datenbank.

IMPALA

  • Impala ist eine Abfrage-Engine, die auf Hadoop läuft. Die öffentliche Beta-Testverteilung wurde im Oktober 2012 angekündigt und wurde im Mai 2013 allgemein verfügbar.
  • Es unterstützt HDFS Apache HBase Storage und Amazon S3.
  • Liest Hadoop-Dateiformate, einschließlich Text, Parkett, Avro, RCFile, LZO und Sequenzdatei.
  • Unterstützt Hadoop-Sicherheit (Kerberos-Authentifizierung).
  • Verwendet Metadaten, ODBC-Treiber und SQL-Syntax von Apache Hive.
  • Es werden mehrere Komprimierungscodecs unterstützt:

(a) Snappy (Empfohlen für ein effektives Gleichgewicht zwischen Komprimierungsverhältnis und Dekomprimierungsgeschwindigkeit),

(b) Gzip (Empfohlen beim Erreichen der höchsten Komprimierungsstufe),

(c) Deflate (nicht für Textdateien unterstützt), Bzip2, LZO (nur für Textdateien);

  • Sie können verschachtelte Strukturen wie Maps, Structs und Arrays abfragen.
  • Es ermöglicht gleichzeitige Abfragen für mehrere Benutzer und ermöglicht auch die Zugriffskontrolle auf der Grundlage der Priorisierung und Warteschlange von Abfragen.

Kopf-an-Kopf-Vergleiche zwischen Hive und Impala (Infografiken)

Unten ist der Top-20-Vergleich zwischen Hive und Impala:

Hive vs Impala

Hive vs Impala

Hauptunterschied zwischen Hive und Impala

Die Unterschiede zwischen Hive und Impala werden in den folgenden Punkten erläutert:

  • Hive wird von Jeffs Team bei Facebook Impala wird von der Apache Software Foundation entwickelt.
  • Hive unterstützt das Dateiformat Optimized Row Columnar (ORC) mit Zlib-Komprimierung, Impala unterstützt jedoch das Parquet-Format mit Snappy-Komprimierung.
  • Hive ist in Java geschrieben, aber Impala ist in C ++ geschrieben.
  • Die Abfrageverarbeitungsgeschwindigkeit in Hive ist langsam, aber Impala ist 6-69 mal schneller als Hive.
  • In Hive ist die Latenz hoch, in Impala jedoch niedrig.
  • Hive unterstützt die Speicherung von RC-Dateien und ORC, aber Impala Storage unterstützt Hadoop und Apache HBase.
  • Hive generiert Abfrageausdrücke zur Kompilierungszeit, aber in Impala erfolgt die Codegenerierung für „große Schleifen“ während der Laufzeit.
  • Hive unterstützt keine Parallelverarbeitung, aber Impala unterstützt die Parallelverarbeitung.
  • Hive unterstützt MapReduce, aber Impala unterstützt MapReduce nicht.
  • In Hive gibt es keine Sicherheitsfunktion, aber Impala unterstützt die Kerberos-Authentifizierung.
  • Bei einem Upgrade eines Projekts, bei dem Kompatibilität und Geschwindigkeit wichtig sind, ist Hive eine ideale Wahl, aber für ein neues Projekt ist Impala die ideale Wahl.
  • Hive ist fehlertolerant, aber Impala unterstützt keine Fehlertoleranz.
  • Hive unterstützt komplexe Typen, aber Impala unterstützt keine komplexen Typen.
  • Hive ist Batch-basierte Hadoop MapReduce, aber Impala ist MPP-Datenbank.
  • Hive unterstützt kein interaktives Computing, aber Impala unterstützt interaktives Computing.
  • Hive-Abfrage hat ein Problem des „Kaltstarts“, aber in Impala Daemon-Prozess werden beim Booten selbst gestartet.
  • Hive Resource Manager ist YARN (ein weiterer Resource Negotiator), aber in Impala Resource Manager ist native *YARN .
  • Hive-Distributionen sind alle Hadoop-Distributionen, Hortonworks (Tez, LLAP), aber in Impala-Distributionen sind Cloudera MapR (* Amazon EMR).
  • Hive Audience sind Dateningenieure, aber in Impala Audience sind Datenanalytiker / Datenwissenschaftler.
  • Der Hive-Durchsatz ist hoch, aber in Impala ist der Durchsatz niedrig.

Hive und Impala Vergleichstabelle

Der primäre Vergleich zwischen Hive und Impala wird unten diskutiert.

Serien-Nr. Basis For Comparison Hive Impala
Developed By Facebook Apache Software
Foundation
File Format
  • Sequence file.
  • Text File.
  • Optimized row columnar (ORC) format with Zlib compression.
  • RC file format.
    i

  • Avro
  • LZO
  • sequence file.
Language Written in JAVA Written in C++
Processing Speed Hive is Slow Impala is Fast
Latency High Low
Storage Support RC file, ORC Hadoop, Apache HBase
Code Conversion Generates query expression at compile time Code generation happens at runtime.
Supports Parallel Processing No Yes
MapReduce Support Yes No
Hadoop Security No Supports Kerberos Authentication.
Usage Ideal for project up-gradation Ideal for starting New Project.
Fault-Tolerant Hive is Fault Tolerant. Does not Supports Fault tolerance.
Complex Types Hive supports complex types. Impala does not support complex types.
Database Type Hive is a batch-based Hadoop MapReduce. It is MPP database
Interactive Computing Does not support Interactive computing. Supports Interactive Computing.
Execution Hive query has a problem with „Cold Start“ Impala process always starts at the Boot-time of Daemons.
Resource Management YARN Native *YARN
Distributions HIVE – all Hadoop Distributions, Hortonworks (Tez, LLAP) Cloudera MapR,
(*Amazon EMR)
Audience Data Engineers Data Analyst/Datenwissenschaftler
Durchsatz Hoher Durchsatz Niedriger Durchsatz

Fazit

In diesem Artikel haben wir versucht zu zeigen, was zwei Technologien sind, nämlich Hive vs Impala, und auch der grundlegende Unterschied zwischen diesen Technologien. In der Praxis können wir sagen, dass Hive und Impala nicht die Konkurrenten sind, die beide zu derselben Stiftung gehören, die als MapReduce für die Ausführung der Abfragen bekannt ist. Je nach Bedarf können wir es zusammen oder am besten je nach Kompatibilität, Bedarf und Leistung verwenden. Hive Query Language ist Hive QL, eine sehr vielseitige und universelle Sprache, während Impala speicherintensiv ist und nicht gut für die Verarbeitung schwerer Datenoperationen wie Join-Abfragen geeignet ist. Wenn in Ihrem Projekt die Arbeit mit der Stapelverarbeitung für eine große Datenmenge zusammenhängt, ist die Struktur in diesem Fall besser, und wenn Ihre Arbeit mit dem Echtzeitprozess einer Ad-hoc-Abfrage von Daten zusammenhängt, ist Impala in diesem Fall besser.

Empfohlene Artikel

Dies war eine Anleitung zu Hive vs Impala. Hier haben wir diskutiert Hive vs Impala Kopf-an-Kopf-Vergleich, die wichtigsten Unterschiede, zusammen mit Infografiken und Vergleichstabelle. Sie können sich auch die folgenden Artikel ansehen, um mehr zu erfahren –

  1. Apache Hive vs Apache Spark SQL – 13 Erstaunliche Unterschiede
  2. Hive VS HUE – Top 6 Nützliche Vergleiche zum Lernen
  3. Apache Pig vs Apache Hive – Top 12 Nützliche Unterschiede
  4. Hadoop vs Hive – Finden Sie die besten Unterschiede heraus
  5. Mit ORDER BY-Funktion in Hive
  6. Komplette Anleitung zur Impala-Datenbank
2 Anteile

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.