Diferencia entre colmena e impala

Hive es un proyecto de software de almacenamiento de datos creado sobre APACHE HADOOP desarrollado por el equipo de Jeff en Facebook con una versión estable actual de 2.3.0 lanzada. Se utiliza para resumir Big data y facilita la consulta y el análisis. Apache Hive es un estándar efectivo para SQL-in Hadoop. Impala es un motor de consulta SQL de procesamiento paralelo que se ejecuta en Apache Hadoop y se utiliza para procesar los datos que se almacenan en HBase (Base de datos de Hadoop) y el Sistema de archivos distribuidos de Hadoop. Impala es un producto de código abierto para el motor de consulta SQL de procesamiento paralelo (MPP) de datos almacenados en un clúster del sistema local que se ejecuta en Apache Hadoop. Apache Hive e Impala son partes clave del sistema Hadoop.

Así que estudiemos tanto Hive como Impala en detalle:

COLMENA

  • Apache Hive ayuda a analizar el enorme conjunto de datos almacenado en el sistema de archivos Hadoop (HDFS) y otros sistemas de archivos compatibles.
  • Hive QL: para consultar datos almacenados en Hadoop Cluster .
  • Explota la escalabilidad de Hadoop por traducción .
  • Hive NO es una base de datos completa .
  • No proporciona actualizaciones a nivel de registro .
  • Hadoop es un sistema orientado a lotes .
  • Las consultas de colmena tienen una latencia alta debido a MapReduce .
  • Hive no proporciona características de It están cerca de OLAP .
  • El más adecuado para aplicaciones de Data Warehouse .
  • Ejecución de consultas a través de MapReduce .
  • el lenguaje de consulta se puede usar con funciones escalares personalizadas (UDF), agregaciones (UDAF) y funciones de tabla (UDTF) .
  • Hive también proporciona indexación para acelerar, tipo de índice que incluye compactación e índice de mapa de bits a partir de 0.10, se planean más tipos de índice.
  • Los tipos de almacenamiento admitidos por Hive son RCfile, HBase, ORC y texto sin formato .
  • Consultas similares a SQL (Hive QL), que se convierten implícitamente en trabajos MapReduce o Tez, o Spark .
  • De manera predeterminada, Hive almacena metadatos en una base de datos Apache Derby integrada .

IMPALA

  • Impala es un motor de consulta que se ejecuta en Hadoop . Su distribución de prueba beta pública se anunció en octubre de 2012 y estuvo disponible en general en mayo de 2013.
  • Es compatible con el almacenamiento HDFS Apache HBase y Amazon S3 .
  • Lee formatos de archivo Hadoop, incluidos texto, parquet, Avro, RCFile, LZO y archivo de secuencia .
  • Admite seguridad Hadoop (autenticación Kerberos) .
  • Utiliza metadatos, controlador ODBC y sintaxis SQL de Apache Hive .
  • Es compatible con múltiples códecs de compresión:

(a) Snappy (Recomendado por su equilibrio efectivo entre la relación de compresión y la velocidad de descompresión),

(b) Gzip (recomendado cuando se alcanza el nivel más alto de compresión),

(c) Deflate (no compatible con archivos de texto), Bzip2, LZO (solo para archivos de texto);

  • Le permite consultar estructuras anidadas, incluidos mapas, estructuras y matrices.
  • Permite consultas concurrentes multiusuario y también permite el control de admisión sobre la base de priorización y puesta en cola de consultas.

Comparaciones cara a cara entre colmena e impala (infografía)

A continuación se muestra la comparación de los 20 principales entre Hive y Impala

Diferencia clave entre colmena vs Impala

Las diferencias entre Hive y Impala se explican en los puntos que se presentan a continuación:

  • Hive es desarrollado por el equipo de Jeff en Facebook, pero Impala es desarrollado por Apache Software Foundation .
  • Hive admite el formato de archivo de formato de columna optimizada (ORC) con compresión Zlib, pero Impala admite el formato Parquet con compresión rápida .
  • Hive está escrito en Java pero Impala está escrito en C ++.
  • La velocidad de procesamiento de consultas en Hive es lenta, pero Impala es 6-69 veces más rápido que Hive .
  • En Hive, la latencia es alta, pero en Impala, la latencia es baja .
  • Hive admite el almacenamiento de archivos RC y ORC, pero el almacenamiento de Impala admite Hadoop y Apache HBase .
  • Hive genera una expresión de consulta en tiempo de compilación, pero en la generación de código Impala para '' bucles grandes '' ocurre durante el tiempo de ejecución .
  • Hive no admite el procesamiento en paralelo, pero Impala admite el procesamiento en paralelo.
  • Hive admite MapReduce pero Impala no es compatible con MapReduce .
  • En Hive, no hay una característica de seguridad, pero Impala admite la autenticación Kerberos .
  • En una actualización de cualquier proyecto donde la compatibilidad y la velocidad son importantes, Hive es una opción ideal, pero para un nuevo proyecto, Impala es la opción ideal .
  • Hive es tolerante a fallas, pero Impala no admite tolerancia a fallas .
  • Hive admite tipos complejos, pero Impala no admite tipos complejos .
  • Hive es Hadoop MapReduce basado en lotes, pero Impala es una base de datos MPP .
  • Hive no es compatible con la informática interactiva, pero Impala es compatible con la informática interactiva .
  • La consulta Hive tiene un problema de "arranque en frío", pero en el proceso de Impala daemon se inicia en el momento del arranque .
  • El administrador de recursos de Hive es YARN (Yet Another Resource Negotiator) pero en Impala el administrador de recursos es nativo * YARN .
  • Las distribuciones de Hive son todas de distribución de Hadoop, Hortonworks (Tez, LLAP) pero en la distribución de Impala están Cloudera MapR (* Amazon EMR) .
  • El público de la colmena son ingenieros de datos, pero en el público de Impala son analistas de datos / científicos de datos.
  • El rendimiento de la colmena es alto, pero en Impala el rendimiento es bajo .

Tabla comparativa Colmena vs Impala

Número de serie.Bases para la comparaciónColmenaImpala
1)Desarrollado porFacebookSoftware Apache
Fundación
2)Formato de archivo
  • Archivo de secuencia.
  • Archivo de texto.
  • Formato optimizado de columnas de fila (ORC) con compresión Zlib.
  • Formato de archivo RC.
  • Formato de parquet con compresión rápida.
  • Avro
  • LZO
  • Archivo de secuencia.
3)IdiomaEscrito en JAVAEscrito en C ++
4)Velocidad de procesamientoLa colmena es lentaImpala es rápido
5)LatenciaAltoBajo
6)Soporte de almacenamientoArchivo RC, ORCHadoop, Apache HBase
7)Conversión de códigoGenera expresión de consulta en tiempo de compilaciónLa generación de código ocurre en tiempo de ejecución.
8)Admite procesamiento paraleloNosi
9)Soporte de MapReducesiNo
10)Seguridad HadoopNoAdmite la autenticación Kerberos.
11)UsoIdeal para gradación de proyectoIdeal para comenzar un nuevo proyecto.
12)Tolerante a fallosLa colmena es tolerante a fallas.No admite tolerancia a fallas.
13)Tipos complejosLa colmena admite tipos complejos.Impala no admite tipos complejos.
14)Tipo de base de datosHive es un Hadoop MapReduce basado en lotes.Es la base de datos MPP
15.Computación interactivaNo es compatible con la informática interactiva.Soporta computación interactiva.
dieciséis.EjecuciónLa consulta de la colmena tiene un problema con el "arranque en frío"El proceso de Impala siempre comienza en el tiempo de arranque de Daemons.
17)Administracion de recursosHILONativo * HILO
18)DistribucionesHIVE: todas las distribuciones de Hadoop, Hortonworks (Tez, LLAP)Cloudera MapR,
(* Amazon EMR)
19)AudienciaIngenieros de datosAnalista de Datos / Científicos de Datos
20)RendimientoAlto rendimientoBajo rendimiento

Conclusión - Colmena vs Impala

En este artículo, hemos intentado mostrar que son dos tecnologías, a saber, Hive e Impala, y también la diferencia básica entre estas tecnologías. En términos prácticos, podemos decir que Hive e Impala no son los competidores, ambos pertenecen a la misma base que se conoce como MapReduce para ejecutar las consultas, el uso de ambos puede crear la diferencia. Según nuestra necesidad, podemos usarlo juntos o lo mejor según la compatibilidad, la necesidad y el rendimiento. El lenguaje de consulta de Hive es Hive QL, que es un lenguaje muy versátil y universal, mientras que Impala requiere mucha memoria y no funciona bien para procesar operaciones de datos pesados, por ejemplo, consultas de unión. Si en su proyecto el trabajo está relacionado con el procesamiento por lotes para una gran cantidad de datos, la Colmena mejorará en ese caso y si su trabajo está relacionado con el proceso en tiempo real de una consulta ad-hoc sobre datos, Impala será mejor en Ese caso.

Artículo recomendado

Esta ha sido una guía para Hive Vs Impala, su significado, comparación cabeza a cabeza, diferencias clave, tabla de comparación y conclusión. También puede consultar los siguientes artículos para obtener más información:

  1. Apache Hive vs Apache Spark SQL - 13 diferencias asombrosas
  2. Hive VS HUE - Top 6 comparaciones útiles para aprender
  3. Apache Pig vs Apache Hive - Top 12 diferencias útiles
  4. Hadoop vs Hive - Descubre las mejores diferencias
  5. Uso de la función ORDER BY en Hive

Categoría: