różnica między Hive vs Impala
hive to projekt oprogramowania hurtowni danych zbudowany na bazie Apache Hadoop opracowany przez zespół Jeffa na Facebooku z aktualną stabilną wersją 2.3.0 wydany. Służy do podsumowania dużych zbiorów danych i ułatwia wyszukiwanie i analizę. Apache Hive jest skutecznym standardem dla SQL-in Hadoop. Impala jest równoległym przetwarzaniem silnika zapytań SQL, który działa na Apache Hadoop i służy do przetwarzania danych przechowywanych w HBase (baza danych Hadoop) i rozproszonym systemie plików Hadoop. Impala jest produktem open-source do przetwarzania równoległego (MPP) silnik zapytań SQL dla danych przechowywanych w lokalnym klastrze systemowym działającym na Apache Hadoop. Apache Hive i Impala są kluczowymi częściami systemu Hadoop.
przestudiujmy więc szczegółowo zarówno Hive, jak i Impala:
rozpocznij bezpłatny kurs nauki o danych
Hadoop, Data Science, Statistics& inne
hive
- Apache Hive pomaga w analizie ogromnego zbioru danych przechowywanego w systemie plików Hadoop (HDFS) i innych kompatybilnych systemach plików.
- Hive QL – do odpytywania danych przechowywanych w klastrze Hadoop.
- wykorzystuje skalowalność Hadoop przez tłumaczenie.
- Hive nie jest pełną bazą danych.
- nie zapewnia aktualizacji na poziomie rekordów.
- Hadoop jest systemem zorientowanym wsadowo.
- zapytania Hive mają duże opóźnienia z powodu MapReduce.
- Hive nie udostępnia funkcji zbliżonych do OLAP.
- najlepiej nadaje się do zastosowań w hurtowni danych.
- wykonanie zapytania poprzez MapReduce.
- język zapytań może być używany z niestandardowymi funkcjami skalarowymi (UDF), agregacjami (UDAF) i funkcjami tabel (UDTF).
- Hive zapewnia również indeksowanie w celu przyspieszenia, typ indeksu, w tym zagęszczenie i indeks bitmapowy od 0.10, planuje się więcej typów indeksów.
- Typy pamięci obsługiwane przez Hive to RCfile, HBase, ORC i zwykły tekst.
- zapytania podobne do SQL (Hive QL), które są domyślnie konwertowane na MapReduce lub Tez lub zadania Spark.
- domyślnie Hive przechowuje metadane we wbudowanej bazie danych Apache Derby.
IMPALA
- Impala to silnik zapytań działający na Hadoop. Publiczna Dystrybucja beta testów została ogłoszona w październiku 2012 roku i stała się ogólnie dostępna w maju 2013 roku.
- obsługuje pamięć masową HDFS Apache HBase i Amazon S3.
- odczytuje formaty plików Hadoop, w tym text, Parquet, Avro, rcfile, LZO i Sequence file.
- obsługuje zabezpieczenia Hadoop (uwierzytelnianie Kerberos).
- używa metadanych, sterownika ODBC i składni SQL z Apache Hive.
- obsługuje wiele kodeków kompresji:
(a) Snappy (zalecany ze względu na efektywną równowagę między współczynnikiem kompresji a szybkością dekompresji),
(b) Gzip (zalecany przy osiągnięciu najwyższego poziomu kompresji),
(c) Deflate (nieobsługiwany dla plików tekstowych), Bzip2, LZO (tylko dla plików tekstowych);
- pozwala na odpytywanie zagnieżdżonych struktur, w tym map, struktur i tablic.
- pozwala na jednoczesne zapytania wielu użytkowników, a także pozwala na kontrolę wstępu na podstawie priorytetyzacji i kolejkowania zapytań.
porównania Head to Head pomiędzy Hive i Impala (infografiki)
Poniżej znajduje się 20 najlepszych porównań pomiędzy Hive i Impala:
kluczowa różnica między Hive i Impala
różnice między Hive i Impala są wyjaśnione w punktach przedstawionych poniżej:
- Hive jest rozwijany przez zespół Jeffa na Facebooku, ale Impala jest rozwijany przez Apache Software Foundation.
- Hive obsługuje format pliku zoptymalizowanego formatu kolumnowego wiersza (ORC) z kompresją Zlib, ale Impala obsługuje format parkietu z kompresją snappy.
- Hive jest napisane w Javie, ale Impala jest napisane w C++.
- szybkość Przetwarzania zapytań w Hive jest powolna, ale Impala jest 6-69 razy szybsza niż Hive.
- w Hive Latency jest wysokie, ale w Impala Latency jest niskie.
- Hive obsługuje przechowywanie plików RC i ORC, ale Impala obsługuje przechowywanie Hadoop i Apache HBase.
- Hive generuje wyrażenie zapytania w czasie kompilacji, ale w impali generowanie kodu dla „dużych pętli” odbywa się w czasie wykonywania.
- Hive nie obsługuje przetwarzania równoległego, ale Impala obsługuje przetwarzanie równoległe.
- Hive obsługuje MapReduce, ale Impala nie obsługuje MapReduce.
- w Hive nie ma funkcji bezpieczeństwa, ale Impala obsługuje uwierzytelnianie Kerberos.
- w aktualizacji każdego projektu, w którym kompatybilność i szybkość są ważne Hive jest idealnym wyborem, ale dla nowego projektu Impala jest idealnym wyborem.
- Hive jest odporny na błędy, ale Impala nie obsługuje tolerancji błędów.
- Hive obsługuje typy złożone, ale Impala nie obsługuje typów złożonych.
- Hive bazuje na Hadoop MapReduce ale Impala to baza MPP.
- Hive nie obsługuje interaktywnych obliczeń, ale Impala obsługuje interaktywne obliczenia.
- zapytanie Hive ma problem z „zimnym startem”, ale w impali proces demona jest uruchamiany w czasie samego rozruchu.
- Hive Resource manager jest YARN (kolejny Negocjator zasobów), ale w Impala Resource manager jest natywny *YARN.
- dystrybucjami Hive są wszystkie dystrybucje Hadoop, Hortonworks (Tez, LLAP), ale w dystrybucji Impala są Cloudera MapR (*Amazon EMR).
- Hive audience to inżynierowie danych, ale w Impala audience to analitycy danych / analitycy danych.
- przepustowość Hive jest wysoka, ale w impali przepustowość jest niska.
Tabela porównawcza Hive i Impala
podstawowe porównanie pomiędzy Hive i Impala omówiono poniżej.
numer seryjny | Basis For Comparison | Hive | Impala |
Developed By | Apache Software Foundation |
||
File Format |
|
|
|
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 Analitycy danych | |
przepustowość | wysoka przepustowość | niska przepustowość |
wniosek
w tym artykule staraliśmy się pokazać, że czym są dwie technologie, a mianowicie Hive vs Impala, a także podstawowa różnica między tymi technologiami. W praktyce możemy powiedzieć, że Hive i Impala nie są konkurentami, obie należą do tej samej fundacji, która jest znana jako MapReduce do wykonywania zapytań, użycie obu może stworzyć różnicę. W zależności od naszych potrzeb możemy używać go razem lub najlepiej w zależności od kompatybilności, potrzeby i wydajności. Hive query language to Hive QL, który jest bardzo wszechstronnym i uniwersalnym językiem, podczas gdy Impala jest intensywnie wykorzystująca pamięć i nie działa dobrze przy przetwarzaniu ciężkich operacji na danych. Jeśli w Twoim projekcie praca jest związana z przetwarzaniem wsadowym dużej ilości danych, Hive będzie w tym przypadku lepszy, a jeśli Twoja praca jest związana z procesem w czasie rzeczywistym kwerendy ad-hoc na dane, Impala będzie w tym przypadku lepszy.
Polecane artykuły
To był przewodnik po Hive vs Impala. Tutaj omówiliśmy Hive vs Impala head to head porównanie, kluczowe różnice, wraz z infografiki i Tabela porównawcza. Możesz również spojrzeć na następujące artykuły, aby dowiedzieć się więcej –
- Apache Hive vs Apache Spark SQL – 13 niesamowite różnice
- Hive VS HUE – Top 6 przydatne porównania do nauki
- Apache Pig vs Apache Hive – Top 12 przydatne różnice
- Hadoop vs Hive – dowiedz się najlepsze różnice
- używając kolejności według funkcji w Hive
- kompletny przewodnik po bazie danych Impala