Hive - Introducción


Advertisements

El término "Big Data" se utiliza para colecciones de grandes conjuntos de datos que incluyen gran volumen, alta velocidad, y una gran variedad de datos que está aumentando día a día. Los sistemas de gestión de datos, que es difícil de procesar grandes datos. Por lo tanto, la Apache Software Foundation presenta un marco de trabajo llamado Hadoop para resolver grandes gestión de datos y los retos que supone este proceso.

Hadoop

Hadoop es un marco de código abierto para almacenar y procesar grandes datos en un entorno distribuido. El proyecto consta de dos módulos, uno de ellos es MapReduce y otra es Hadoop Distributed File System (HDFS).

  • MapReduce:es un modelo de programación paralela para procesar grandes cantidades de estructurados, semiestructurados y sin estructurar datos sobre grandes grupos de hardware de productos básicos.

  • HDFS:Hadoop Distributed File System es un parte de Hadoop marco, que se utiliza para almacenar y procesar los datos. Es un fallo de sistema de archivos tolerante a ejecutarse en hardware.

El Hadoop ecosistema contiene diferentes sub-proyectos (herramientas) como Sqoop, cerdo, y Hive que se usan para ayudar a Hadoop módulos.

  • Sqoop:se utiliza para importar y exportar datos de un lado a otro entre HDFS y.

  • Cerdo:es un lenguaje de procedimientos plataforma utilizada para crear un script para operaciones de MapReduce.

  • Hive:es una plataforma que se utiliza para desarrollar tipo SQL scripts para hacer operaciones de MapReduce.

Nota:Hay varias formas de ejecutar operaciones de MapReduce:

  • El enfoque tradicional utilizando Java programa de MapReduce estructurados, semiestructurados y sin estructurar los datos.
  • El scripting de MapReduce enfoque de proceso estructurado y semi datos estructurados con cerdo.
  • La Hive (Lenguaje de Consulta Estructurado HiveQL o HQL) de MapReduce para procesar datos estructurados con Hive.

¿Qué es Hive

Sección es una infraestructura de almacenamiento de datos de proceso de datos estructurados en Hadoop. Se encuentra en la parte superior de Hadoop para resumir grandes datos y facilita consultar y analizar fácil.

Hive fue inicialmente desarrollado por Facebook, después, la Apache Software Foundation ha desarrollado aún más y como un código fuente abierto bajo el nombre Apache Hive. Es utilizado por diferentes empresas. Por ejemplo, Amazon utiliza en Amazon Elastic MapReduce.

Hive no es

  • Una base de datos relacional
  • Un diseño para OnLine Transaction Processing (OLTP)
  • UN idioma en tiempo real las consultas y actualizaciones a nivel de fila

Características de Hive

  • Esquema que almacena en una base de datos y se procesan los datos en HDFS.
  • Está diseñado para OLAP.
  • Proporciona tipo SQL lenguaje de consulta o pedido HiveQL HQL.
  • Es familiar, rápido, escalable y extensible.

Arquitectura de Hive

El siguiente diagrama de componentes muestra la arquitectura de separación:

Hive Architecture

Este diagrama de componentes contiene diferentes unidades. La siguiente tabla describe cada una de las unidades:

Nombre de la unidad Funcionamiento
Interfaz de usuario Sección es una infraestructura de almacenamiento de datos software que puede crear interacción entre usuario y HDFS. Las interfaces de usuario que son Hive Hive es compatible con interfaz Web, línea de comandos y Hive HD Insight (en Windows).
Meta Almacenar Hive elige respectivos servidores de bases de datos para almacenar el esquema o metadatos de tablas, bases de datos, las columnas de una tabla, sus tipos de datos y cartografía HDFS.
Motor de Procesos HiveQL HiveQL es similar a SQL para realizar consultas de información sobre el esquema Metastore. Es uno de los sustitutos del enfoque tradicional de MapReduce programa. En lugar de escribir MapReduce programa en Java, se puede escribir una consulta de MapReduce trabajo y proceso.
Motor de ejecución La conjunción de proceso HiveQL Motor y MapReduce es Hive Motor de ejecución. Motor de ejecución procesa la consulta y genera los resultados de la misma como MapReduce resultados. Utiliza el sabor de MapReduce.
HDFS o HBASE Hadoop distributed file system o HBASE son el almacenamiento de datos técnicas para almacenar datos en sistema de archivos.

Hive de trabajo

El siguiente diagrama muestra el flujo de trabajo entre Hive y Hadoop.

How Hive Works

La siguiente tabla define cómo interactúa con Hadoop Hive marco:

Paso No. Funcionamiento
1 Ejecutar consulta

La Hive interfaz como línea de comandos o interfaz de usuario Web consulta envía al controlador (controlador de base alguna, como JDBC, ODBC, etc. ) para que se ejecute.

2 Obtener Plan

El conductor tiene la ayuda de consulta compilador que analiza la consulta para verificar la sintaxis y plan de consulta o la exigencia de consulta.

3 Obtener metadatos

El compilador envía solicitud de metadatos Metastore (cualquier base de datos).

4 Enviar Metadatos

Metastore envía los metadatos, como una respuesta para el compilador.

5 Enviar Plan

El compilador comprueba el requisito y vuelve el plan al conductor. Hasta aquí, el análisis y elaboración de una consulta es completa.

6 Ejecutar Plan

El controlador envía el plan a ejecutar el motor de ejecución.

7 Ejecutar trabajo

Internamente, el proceso de ejecución se trata de un trabajo de MapReduce. El motor de ejecución envía el trabajo a JobTracker, que está a nombre nodo y asigna este trabajo a TaskTracker, que es en nodo de datos. Aquí, la consulta se ejecuta trabajos MapReduce.

7.1 Metadatos Po

Mientras tanto en la ejecución, el motor de ejecución puede ejecutar las operaciones de metadatos con Metastore.

8 Buscar resultados

El motor de ejecución reciba los resultados de nodos de datos.

9 Enviar Resultados

El motor de ejecución envía los valores resultantes para el conductor.

10 Enviar Resultados

El controlador envía los resultados a Hive Interfaces.

Advertisements