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 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:
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.
El siguiente diagrama de componentes muestra la arquitectura de separación:
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. |
El siguiente diagrama muestra el flujo de trabajo entre Hive y Hadoop.
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. |