Arquitectura y funcionamiento de Hive

Requisito previo: Introducción a Hadoop , Apache Hive 
Los componentes principales de Hive y su interacción con Hadoop se muestran en la siguiente figura y todos los componentes se describen con más detalle: 

  • Interfaz de usuario (UI): 
    como su nombre lo describe, la interfaz de usuario proporciona una interfaz entre el usuario y la colmena. Permite al usuario enviar consultas y otras operaciones al sistema. La interfaz de usuario web de Hive, la línea de comandos de Hive y Hive HD Insight (en el servidor de Windows) son compatibles con la interfaz de usuario. 
     
  • Servidor Hive : se lo conoce como Apache Thrift Server. Acepta la solicitud de diferentes clientes y se la proporciona a Hive Driver.
  •  
     

  • Controlador: 
    el controlador recibe las consultas del usuario después de la interfaz dentro de Hive. El controlador implementa el concepto de identificadores de sesión. El usuario proporciona la ejecución y obtención de API modeladas en interfaces JDBC/ODBC. 
     
  • Compilador: 
    las consultas son análisis, el compilador realiza el análisis semántico de los diferentes bloques de consulta y la expresión de la consulta. El compilador genera el plan de ejecución con la ayuda de la tabla en la base de datos y los metadatos de partición observados desde el metastore. 
     
  • Metastore: 
    todos los datos estructurados o la información de las diferentes tablas y particiones en el almacén que contienen atributos e información de nivel de atributos se almacenan en el metastore. Secuencias o desecuencias necesarias para leer y escribir datos y los correspondientes archivos HDFS donde se almacenan los datos. Hive selecciona los servidores de bases de datos correspondientes para almacenar el esquema o los metadatos de las bases de datos, las tablas, los atributos de una tabla, los tipos de datos de las bases de datos y la asignación de HDFS. 
     
  • Motor 
    de ejecución: la ejecución del plan de ejecución realizado por el compilador se realiza en el motor de ejecución. El plan es un DAG de etapas. Las dependencias dentro de las diversas etapas del plan son administradas por el motor de ejecución y ejecuta estas etapas en los componentes del sistema adecuados. 

Diagrama: arquitectura de Hive construida sobre Hadoop 

En el diagrama anterior, junto con la arquitectura, se demuestra paso a paso el flujo de ejecución de trabajos en Hive con Hadoop

  • Paso 1: Ejecutar consulta: 
    la interfaz de Hive, como la línea de comandos o la interfaz de usuario web, envía una consulta al controlador para que la ejecute. En esto, la interfaz de usuario llama a la interfaz de ejecución del controlador, como ODBC o JDBC. 
     
  • Paso 2: Obtener plan: 
    el controlador diseña un identificador de sesión para la consulta y transfiere la consulta al compilador para crear un plan de ejecución. En otras palabras, el controlador interactúa con el compilador. 
     
  • Paso 3: obtener metadatos: 
    en esto, el compilador transfiere la solicitud de metadatos a cualquier base de datos y el compilador obtiene los metadatos necesarios del almacén de metadatos. 
     
  • Paso 4: Enviar metadatos: 
    Metastore transfiere los metadatos como reconocimiento al compilador. 
     
  • Paso 5: Plan de envío: 
    el compilador se comunica con el controlador con el plan de ejecución realizado por el compilador para ejecutar la consulta. 
     
  • Paso 6: Ejecutar plan: 
    el controlador envía el plan de ejecución al motor de ejecución. 
    • Ejecutar trabajo
    • Trabajo hecho
    • Operación Dfs (Operación de metadatos)
  • Paso 7: Obtener resultados: 
    obtener resultados del controlador a la interfaz de usuario (IU). 
     
  • Paso 8: Enviar resultados: 
    el resultado se transfiere al motor de ejecución desde el controlador. Envío de resultados al motor de ejecución. Cuando el resultado se recupera de los Nodes de datos al motor de ejecución, devuelve el resultado al controlador y a la interfaz de usuario (UI). 
     

Publicación traducida automáticamente

Artículo escrito por Madhurkant Sharma y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *