diferența dintre Hive vs Impala
hive este un proiect software depozit de date construit pe partea de sus a Apache Hadoop dezvoltat de echipa lui Jeff la Facebook, cu o versiune stabilă actuală a 2.3.0 lansat. Este folosit pentru rezumarea datelor mari și facilitează interogarea și analiza. Apache Hive este un standard eficient pentru SQL-în Hadoop. Impala este un motor de interogare SQL de procesare paralel care ruleaza pe Apache Hadoop și de a folosi pentru a procesa datele care stochează în HBase (Hadoop Database) și Hadoop sistem de fișiere distribuite. Impala este un produs open-source pentru procesare paralelă (MPP) SQL motor de interogare pentru datele stocate într-un cluster de sistem local care rulează pe Apache Hadoop. Apache Hive și Impala ambele sunt părți cheie ale sistemului Hadoop.
deci, să studiem atât stupul, cât și Impala în detaliu:
începeți cursul gratuit de știință a datelor
Hadoop, știința datelor, statistici& altele
Hive
- Apache Hive ajută la analiza imens set de date stocate în sistemul de fișiere Hadoop (HDFS) și alte sisteme de fișiere compatibile.
- Hive QL – pentru interogarea datelor stocate în clusterul Hadoop.
- exploatează scalabilitatea Hadoop prin traducere.
- Hive nu este o bază de date completă.
- nu oferă actualizări la nivel de înregistrare.
- Hadoop este sistem orientat lot.
- interogările stupului au o latență ridicată datorită MapReduce.
- stup nu oferă caracteristici ale acesteia sunt aproape de OLAP.
- cele mai potrivite pentru aplicații depozit de date.
- executarea interogării prin MapReduce.
- limbajul de interogare poate fi utilizat cu funcții scalare personalizate (UDF), agregări (UDAF) și funcții de tabel (UDTF).
- Hive oferă, de asemenea indexare pentru a accelera, tip index, inclusiv compactarea și indicele bitmap ca de 0,10, mai multe tipuri de index sunt planificate.
- tipuri de stocare acceptate de Hive sunt RCfile, HBase, ORC, și text simplu.
- interogări SQL-like (Hive QL), care sunt convertite implicit în MapReduce sau Tez, sau locuri de muncă Spark.
- în mod implicit, stup stochează metadate într-o bază de date Apache Derby încorporată.
IMPALA
- Impala este un motor de interogare care rulează pe Hadoop. Distribuția publică a testelor beta a fost anunțată în octombrie 2012 și a devenit disponibilă în general în Mai 2013.
- aceasta susține HDFS Apache HBase de stocare și Amazon S3.
- citește formate de fișiere Hadoop, inclusiv text, parchet, Avro, RCFile, LZO, și fișier secvență.
- acceptă securitatea Hadoop (autentificarea Kerberos).
- utilizează metadatele, driverul ODBC și sintaxa SQL din Apache Hive.
- suportă mai multe codecuri de compresie:
(a) Snappy (recomandat pentru echilibrul său efectiv între raportul de compresie și viteza de decompresie),
(b) Gzip (recomandat la atingerea celui mai înalt nivel de compresie),
(c) dezumflați (nu este acceptat pentru fișiere text), Bzip2, LZO (numai pentru fișiere text);
- vă permite să interogați pe structuri imbricate, inclusiv hărți, structuri și matrice.
- permite interogări concurente multi-utilizator și permite, de asemenea, controlul admiterii pe baza prioritizării și a cozii interogărilor.
cap la cap comparații între stup și Impala (Infographics)
mai jos este Top 20 comparația între stup și Impala:
Diferența cheie dintre Hive și Impala
diferențele dintre Hive și Impala sunt explicate în punctele prezentate mai jos:
- Hive este dezvoltat de echipa lui Jeff la Facebook, dar Impala este dezvoltat de Apache Software Foundation.
- Hive acceptă formatul de fișier de rând optimizat columnar (ORC) format cu compresie Zlib, dar Impala acceptă formatul parchet cu compresie vioi.
- Hive este scris în Java, dar Impala este scris în c++.
- viteza de procesare a interogării în Hive este lentă, dar Impala este de 6-69 ori mai rapidă decât Hive.
- în stup latența este ridicată, dar în Impala latența este scăzută.
- Hive acceptă stocarea fișierului RC și ORC, dar suportul de stocare Impala este Hadoop și Apache HBase.
- Hive generează expresie de interogare la momentul compilării, dar în generarea de cod Impala pentru „bucle mari” se întâmplă în timpul rulării.
- Hive nu acceptă procesarea paralelă, dar Impala acceptă procesarea paralelă.
- Hive acceptă MapReduce, dar Impala nu acceptă MapReduce.
- în Hive, nu există nicio caracteristică de securitate, dar Impala acceptă autentificarea Kerberos.
- într-un upgrade de orice proiect în cazul în care compatibilitatea și viteza ambele sunt importante stup este o alegere ideală, dar pentru un nou proiect, Impala este alegerea ideala.
- Hive este tolerant la erori, dar Impala nu acceptă toleranța la erori.
- Hive acceptă tipul complex, dar Impala nu acceptă tipurile complexe.
- Hive este bazat pe lot Hadoop MapReduce dar Impala este baza de date MPP.
- Hive nu acceptă calculul interactiv, dar Impala acceptă calculul interactiv.
- interogare stup are o problemă de „pornire la rece”, dar în procesul de demonul Impala sunt pornite la momentul de boot în sine.
- Hive resource manager este fire (încă un alt negociator de resurse), dar în Impala resource manager este nativ *fire.
- distribuții stup sunt toate distribuție Hadoop, Hortonworks (Tez, LLAP), dar în distribuție Impala sunt Cloudera MapR (*Amazon EMR).
- publicul stup este ingineri de date, dar în publicul Impala sunt analiști de date / Oameni de știință de date.
- debitul stupului este ridicat, dar în Impala debitul este scăzut.
stupul și tabelul de comparație Impala
comparația primară dintre stupul și Impala sunt discutate mai jos.
Serial nr. | 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 Analist/oameni de știință de date | |
debit | debit mare | debit redus |
concluzie
în acest articol, am încercat să arătăm că ceea ce sunt două tehnologii și anume Hive vs Impala sunt și, de asemenea, diferența de bază dintre aceste tehnologii. În termeni practici, putem spune că Hive și Impala nu sunt concurenții, ambii aparțin aceleiași fundații cunoscute sub numele de MapReduce pentru executarea interogărilor, utilizarea ambelor poate crea diferența. În funcție de nevoia noastră, îl putem folosi împreună sau cel mai bun în funcție de compatibilitate, nevoie și performanță. Limba de interogare a stupului este Hive QL, care este un limbaj foarte versatil și universal, în timp ce Impala este intensivă în memorie și nu funcționează bine pentru procesarea operațiunilor de date grele, exemplu de alăturare a interogărilor. Dacă în proiectul dvs. munca este legată de procesarea în lot pentru o cantitate mare de date, stupul va fi mai bun în acest caz și dacă munca dvs. este legată de procesul în timp real al unei interogări ad-hoc asupra datelor, atunci Impala va fi mai bună în acest caz.
Articole recomandate
acesta a fost un ghid pentru Hive vs Impala. Aici am discutat Hive vs Impala cap la cap comparație, diferențele cheie, împreună cu infographics și tabelul de comparație. Puteți, de asemenea, uita –te la următoarele articole pentru a afla mai multe –
- Apache Hive vs Apache Spark SQL – 13 diferențe uimitoare
- Hive VS HUE – Top 6 comparații utile pentru a afla
- Apache Pig vs Apache Hive – Top 12 diferențe utile
- Hadoop vs Hive-afla cele mai bune diferențe
- folosind ordinea de funcție în Hive
- ghid complet pentru baza de date Impala