Bit - loader

Azure HDInsight, una distribución Big Data en Hadoop


Netmind - Azure HDInsight, una distribución Big Data en Hadoop    Artículo | Microsoft Azure
Ángel M. Rayo | 22/09/17

Como ya comenté en un artículo previo el año pasado, Azure HDInsight es una distribución Big Data en la nube de Apache Hadoop.

Azure HDInsight ofrece implementaciones de Apache Spark, HBase, Kafka, Storm, Pig, Hive, Sqoop, Oozie y Ambari entre otros productos y servicios.

 

Azure HDInsight, una distribución Big Data en Hadoop 0

Ilustración 1 – Productos HDInsight

Azure HDInsight permite crear clústeres de los siguientes tipos como ya comenté:

  • Apache Hadoop como gestor de archivos distribuidos
  • Apache Spark como gestor de archivos en memoria
  • Apache HBase
  • Microsoft R Server
  • Apache Storm
  • Apache Interactive Hive (preview)
  • Apache Kafka (preview)
  • Clústeres Active Directory (preview)
  • Clústeres personalizados con acciones de script con Hue, Giraph, R o Solr

 

Arquitectura

Los cimientos de Azure HDInsight están compuestos por System Center, Azure Data Marketplace, Azure Storage Vault y Active Directory para la gestión de la seguridad.

En la siguiente ilustración podemos ver la arquitectura completa y su relación:

 

Azure HDInsight, una distribución Big Data en Hadoop 1

Ilustración 2 – Arquitectura HDInsight

Primeros pasos

El primer paso será decidir el tipo de clúster que queremos crear, el sistema operativo, la versión el nivel de clúster (estándar o premium):

 

Azure HDInsight, una distribución Big Data en Hadoop 2

Ilustración 3 – Creación del clúster

En este ejemplo veremos la creación de un clúster Hadoop con sistema operativo Linux y versión 2.7.3 estándar. Con esta configuración tendremos acceso a los siguientes componentes:

  • SSH
  • Aplicaciones de HDInsight
  • Red virtual personalizada
  • Hive metastore personalizado
  • Oozie metastore personalizado
  • Acceso a Data Lake Store

 

Después de haber establecido los valores de los parámetros de configuración y pasados unos 20 minutos tendremos creado nuestro clúster HDInsight.

Una vez tengamos el clúster podremos acceder a él a través del panel o bien a través de SSH.

 

Azure HDInsight, una distribución Big Data en Hadoop 3

Ilustración 4 – Panel Ambari de HDInsight

 

Además de acceder a la visión general más orientada a administradores del entorno también podremos acceder a las vistas de tres herramientas principales: YARN, Hive y Tez.

 

Vista YARN

Con la vista de YARN (Yet Another Resource Negotiator) Queue Manager podremos gestionar los nodos del clúster, el máximo de aplicaciones soportadas y su capacidad.

 

Azure HDInsight, una distribución Big Data en Hadoop 4

Ilustración 5 – Vista YARN Queue Manager

Vista Hive

Con la vista de Hive podremos ver y crear tablas, consultas, funciones y trabajos de consulta de datos HDFS. En la siguiente ilustración podemos ver los datos iniciales en los que existe una tabla de ejemplo hivetablesample que podremos consumir posteriormente desde Visual Studio con .NET o con otros lenguajes como Java, Python, etc.

 

Azure HDInsight, una distribución Big Data en Hadoop 5

Ilustración 6 – Vista Hive de HDInsight

Podemos crear queries Hive directamente en el navegador e incluso ver la explicación visual de las operaciones realizadas de cara a poder optimizarlas posteriormente:

 

Azure HDInsight, una distribución Big Data en Hadoop 6

Ilustración 7 – Consulta Hive

Azure HDInsight, una distribución Big Data en Hadoop 7

Ilustración 8 – Visual Explain de consulta Hive

Vista Tez

Con la vista Tez podremos ver el histórico de ejecución de consultas contra el clúster como podemos ver en la siguiente imagen:

 

Azure HDInsight, una distribución Big Data en Hadoop 8

Ilustración 9 – Vista Tez

Incluso podremos ver de manera visual los detalles de cada consulta de cara a optimizarla posteriormente:

 

Azure HDInsight, una distribución Big Data en Hadoop 9

Ilustración 10 – Resultados de la ejecución de una query Hive

Conclusión

Con Azure HDInsight conseguiremos construir un clúster Big Data con Hadoop en 5 minutos para poder implementar soluciones con Spark, Python, Java, Hive, Pig, etc. Con un coste aproximado de 3 € / hora permite realizar Pruebas de Concepto (PoC) para identificar necesidades reales de nuestros trabajos de análisis de datos.

Como dijo William Gibson (1948), escritor de ciencia ficción estadounidense y considerado como el padre del cyberpunk «The future has already arrived. It’s just not evenly distributed yet.» («El futuro ya ha llegado. Aún no se distribuye uniformemente»)


Ángel M. Rayo

Ángel es Ingeniero en Informática por la Universidad Politécnica de Madrid. Desde hace 15 años su principal objetivo es ayudar a los equipos de IT a crear excelentes soluciones tecnológicas. Actualmente lidera el área de formación técnica en Netmind, ejerciendo como formador y mentor, colaborando con todo tipo de organizaciones y equipos que desean adoptar la mejores prácticas y tecnologías para crear sus soluciones. Es formador oficial de Microsoft, ISTQB, DASA, y ha liderado proyectos de formación y consultoría para empresas como BBVA, Axa, PwC, Roche, Microsoft, Accenture, Capgemini e Indra. Escribe habitualmente en el Knowledge Center de BIT y en el de Netmind, y colabora con distintas asociaciones y grupos de usuarios en la divulgación de las mejores prácticas de desarrollo de software. Ángel cuenta con las certificaciones en Gestión de Servicios ITIL® Expert e ISO/IEC 20000 Consultant Manager. Fue reconocido por Microsoft como Cloud Ambassador en 2012 y fue MCT Regional Lead entre 2012 y 2015. Su labor ha sido conseguir los mejores resultados en los programas formativos que imparte y garantizar que puedan avanzar en su carrera profesional.


Entradas relacionadas

Cursos relacionados