HIVE Introducción, Ventajas y Desventajas y Principios de Arquitectura

1 ¿Qué es la colmena?

  1. Introducción a la colmena

colmena: una herramienta de estadísticas de datos de código abierto de Facebook para resolver registros estructurados masivos.

Hive es una herramienta de almacenamiento de datos basada en Hadoop que puede mapear archivos de datos estructurados en una tabla y proporcionar funciones de consulta similares a SQL.

  1. La esencia de Hive: convertir HQL en programa MapReduce

Por favor agregue una descripción de la imagen

Los datos procesados ​​por Hive se almacenan en HDFS

La implementación subyacente de los datos de análisis de Hive es MapReduce

Ejecutando el programa en Yarn

2 Ventajas y desventajas de Hive

2.1 Ventajas

  1. La interfaz de operación adopta una sintaxis similar a SQL, que brinda la capacidad de un desarrollo rápido (simple y fácil de usar).
  2. Evita escribir MapReduce y reduce el costo de aprendizaje de los desarrolladores.
  3. El retraso de ejecución de Hive es relativamente alto, por lo que Hive se usa a menudo para el análisis de datos y ocasiones que no requieren un alto rendimiento en tiempo real.
  4. La ventaja de Hive radica en el procesamiento de datos grandes, pero no tiene ninguna ventaja en el procesamiento de datos pequeños, porque Hive tiene un retraso de ejecución relativamente alto.
  5. Hive admite funciones definidas por el usuario, y los usuarios pueden implementar sus propias funciones según sus necesidades.

2.2 Desventajas

  1. La expresividad de HQL de Hive es limitada
    1. Los algoritmos iterativos no pueden expresar
    2. No soy bueno en la minería de datos. Debido a la limitación del flujo de procesamiento de datos de MapReduce, no se pueden realizar algoritmos más eficientes.
  2. Hive es menos eficiente
    1. El trabajo de MapReduce generado automáticamente por Hive generalmente no es lo suficientemente inteligente
    2. El ajuste de la colmena es difícil y la granularidad es gruesa

3 principios de la arquitectura Hive

Por favor agregue una descripción de la imagen

  1. Metadatos: Metastore

    CLI (interfaz de línea de comandos), JDBC/ODBC (sección de acceso jdbc), WEBUI (sección de acceso del navegador)

  2. Metadatos: Metastore

    Los metadatos incluyen: nombre de la tabla, base de datos a la que pertenece la tabla (el valor predeterminado es predeterminado), propietario de la tabla, campo de columna/partición, tipo de tabla (si es una tabla externa), el directorio donde residen los datos de la tabla, etc.; el valor predeterminado se almacena en la base de datos derby incorporada, se recomienda usar MySQL para almacenar el metastore.

  3. Hadoop

    Use HDFS para el almacenamiento y MapReduce para el cálculo.

  4. Conducir: Conductor

    Analizador (SQL Parser): convierta cadenas SQL en un árbol de sintaxis abstracto AST, este paso generalmente se realiza con bibliotecas de herramientas de terceros, como antlr; realice análisis gramaticales en AST, como si la tabla existe, si el campo existe, si la semántica de SQL está equivocada.

    Compilador (plan físico): compila AST para generar un plan de ejecución lógico.

    Optimizer (Query Optimizer): optimizar el plan de ejecución lógica.

    Ejecución: Convierta el plan de ejecución lógico en un plan físico que se pueda ejecutar. Para Hive, es MR/Spark.

Por favor agregue una descripción de la imagen

A través de una serie de interfaces interactivas proporcionadas a los usuarios, Hive recibe instrucciones del usuario (SQL), utiliza su propio controlador, combina metadatos (MetaStore), traduce estas instrucciones a MapReduce, las envía a Hadoop para su ejecución y finalmente devuelve la ejecución. Los resultados son salida a la interfaz de usuario.

Supongo que te gusta

Origin blog.csdn.net/meng_xin_true/article/details/126039609
Recomendado
Clasificación