2008-08-23 17 views

Respuesta

48

Es difícil encontrar mucho acerca de la colmena, pero he encontrado este snippet en el sitio de la colmena que se apoya fuertemente en favor de HBase (negrita añadida):

colmena está basada en Hadoop, que es un sistema de procesamiento por lotes. En consecuencia, este sistema no y no pueden prometer bajas latencias en las consultas. El paradigma aquí es estrictamente la presentación de trabajos y la notificación cuando se completan los trabajos en lugar de las consultas en tiempo real. Como resultado, no debe compararse con sistemas como Oracle, donde el análisis se realiza sobre una cantidad de datos significativamente menor, pero el análisis avanza mucho más de manera iterativa, con tiempos de respuesta entre iteraciones que son de menos de unos pocos minutos. Para Hive, los tiempos de respuesta de las consultas, incluso para los trabajos más pequeños, pueden ser del orden de 5-10 minutos y para trabajos más grandes, esto puede incluso llevar horas.

Dado que HBase e HiperTable se basan en el rendimiento (están modelados en la BigTable de Google), suenan como si fueran mucho más rápidos que Hive, a costa de una mayor curva de aprendizaje (por ejemplo, no tener uniones o la sintaxis similar a SQL).

8

Hive es una herramienta de análisis. Al igual que pig, se diseñó para el procesamiento por lotes ad hoc de cantidades de datos potencialmente enormes mediante el aprovechamiento de map reduce. Piensa en terbytes. Imagine intentar hacer eso en una base de datos relacional ...

HBase es un almacén de valores de claves basado en columnas basado en BigTable. No puede hacer consultas per se, aunque puede ejecutar trabajos de reducción de mapa sobre HBase. Su caso de uso principal es buscar filas por clave o escanear rangos de filas. Una característica importante es poder tener una localidad de datos cuando se escanea a través de rangos de claves de fila para una 'familia' de columnas.

11

Desde una perspectiva, Hive consta de cinco componentes principales: una gramática y analizador similar a SQL, un planificador de consultas, un motor de ejecución de consultas, un repositorio de metadatos y un diseño de almacenamiento en columnas. Su enfoque principal son las cargas de trabajo analíticas al estilo del almacén de datos, por lo que no es necesaria la recuperación de valores de latencia baja por clave.

HBase tiene su propio repositorio de metadatos y el diseño de almacenamiento en columnas. Es posible crear consultas HiveQL sobre tablas HBase, lo que permite a HBase aprovechar la gramática y el analizador de Hive, el planificador de consultas y el motor de ejecución de consultas. Ver http://wiki.apache.org/hadoop/Hive/HBaseIntegration para más detalles.

5

Para mi humilde conocimiento, Hive es más comparable a Pig. Hive es similar a SQL y Pig está basado en script. Hive parece ser más complicado con los motores de optimización y ejecución de consultas, así como requiere que el usuario final especifique los parámetros del esquema (partición, etc.). Ambos tienen la intención de procesar archivos de texto o sequenceFiles.

HBase sirve para guardar y recuperar datos de valores clave ... puede escanear o filtrar esos pares de valores clave (filas). No puede hacer consultas en filas (clave, valor).

3

A partir de las versiones más recientes de Hive, muchas cosas han cambiado y requieren una pequeña actualización como Hive and HBase are now integrated. Lo que esto significa es que Hive se puede usar como una capa de consulta en un almacén de datos HBase. Ahora, si las personas están buscando interfaces de HBase alternativas, Pig también ofrece una manera realmente agradable de loading and storing HBase data. Además, parece que Cloudera Impala puede ofrecer un rendimiento sustancial en consultas basadas en Hive además de HBase. Ellos reclaman consultas hasta 45 veces más rápidas que las configuraciones tradicionales de Hive.

0

Para comparar la colmena con hbase, me gustaría recordar la definición a continuación:

una base de datos diseñada para manejar las transacciones no está diseñado para manejar análisis. No está estructurado para hacer bien los análisis. Por otro lado, un almacén de datos, , está estructurado para que el análisis sea rápido y fácil.

Hive es una infraestructura de depósito de datos construida sobre Hadoop que es adecuada para trabajos ETL de larga ejecución. hbase es una base de datos diseñada para manejar las transacciones en tiempo real

3

HBase Colmena y se utilizan para diferentes purpose.

Colmena:

Pros:

  1. Apache Hive es una infraestructura de almacenamiento de datos construido encima de Hadoop .
  2. Permite consultar los datos almacenados en HDFS para el análisis a través de HQL, un lenguaje SQL-como, que será convertida en serie de MapReduce Empleo
  3. Sólo funciona procesos por lotes en Hadoop.
  4. el que es compatible JDBC, sino que también se integra con herramientas basadas en SQL existentes
  5. Colmena apoya particiones
  6. Es compatible con consulta analítica de los datos recogidos durante un período de tiempo

Contras :

  1. No es compatible actualmente con las instrucciones de actualización
  2. Debe estar provisto de un esquema predefinido para asignar los archivos y directorios en columnas

HBase:

Pros:

  1. A escalable, base de datos distribuida que admite almacenamiento de datos estructurados para tablas grandes
  2. Proporciona acceso de lectura/escritura aleatorio en tiempo real a su Big Data. operaciones HBase se ejecutan en tiempo real en su base de datos en lugar de los trabajos de MapReduce
  3. apoya particiones a las tablas y las tablas se dividen además en familias columna
  4. escalas horizontal con gran cantidad de datos mediante el uso de Hadoop
  5. Proporciona acceso basado en claves a datos cuando se almacena o recupera. Es admite agregar o actualizar filas.
  6. Soporta versoning de datos.

Contras: consultas

  1. HBase están escritas en un lenguaje personalizado que se necesita aprender
  2. HBase no es totalmente conforme a ACID
  3. No se puede utilizar con complicada patrones de acceso (como uniones)
  4. Tampoco es un sustituto completo de HDFS al hacer un lote grande MapReduce

Resumen:

colmena se puede utilizar para consultas analíticas mientras HBase para realizar consultas en tiempo real. Los datos incluso se pueden leer y escribir desde Hive a HBase y viceversa.

+0

Hive-0.14 y superior es una queja ACID. – Farooque

Cuestiones relacionadas