Conectarse a Azure HDInsight y ejecutar consultas de Apache Hive con Herramientas de Data Lake para Visual Studio

Obtenga información sobre cómo usar Herramientas de Microsoft Azure Data Lake y Stream Analytics para Visual Studio (Herramientas de Data Lake). Use la herramienta para conectarse a los clústeres de Apache Hadoop en Azure HDInsight y envíe las consultas de Hive.

Para obtener más información sobre cómo usar HDInsight, consulte Introducción a HDInsight.

Data Lake Tools para Visual Studio se puede utilizar para acceder a Azure Data Lake Analytics y a HDInsight. Para más información acerca de Data Lake Tools, consulte Desarrollo de scripts U-SQL mediante Data Lake Tools para Visual Studio.

Prerrequisitos

Para completar este artículo y usar Herramientas de Data Lake para Visual Studio, se necesitan los siguientes elementos:

Instalación de Data Lake Tools para Visual Studio

Siga las instrucciones adecuadas para instalar la versión que necesita de Herramientas de Data Lake para Visual Studio:

  • Para Visual Studio 2017 o Visual Studio 2019:

    Durante la instalación de Visual Studio, asegúrese de incluir la carga de trabajo Desarrollo de Azure o la carga de trabajo de Almacenamiento y procesamiento de datos.

    Para las instalaciones existentes de Visual Studio, vaya a la barra de menús del IDE y seleccione Herramientas>Obtener herramientas y características para abrir el Instalador de Visual Studio. En la pestaña Cargas de trabajo, seleccione al menos la carga de trabajo Desarrollo de Azure (en Web y nube). O bien, seleccione la carga de trabajo Almacenamiento y procesamiento de datos (en Otros conjuntos de herramientas).

    Workload selection, Visual Studio Installer.

  • Para Visual Studio 2015:

    Descargue Herramientas de Data Lake. Elija la versión de Data Lake Tools que coincida con su versión de Visual Studio.

Actualización de Herramientas de Data Lake para Visual Studio

Después, asegúrese de actualizar Herramientas de Data Lake a la versión más reciente.

  1. Abra Visual Studio.

  2. En la ventana de inicio, seleccione Continuar sin código.

  3. En la barra de menús del IDE de Visual Studio, elija Extensiones>Administrar extensiones.

  4. En el cuadro de diálogo Administrar extensiones, expanda el nodo Actualizaciones.

  5. Si la lista de actualizaciones disponibles incluye Herramientas de Azure Data Lake y Stream Analytics, selecciónela. A continuación, haga clic en el botón Actualizar. Después de que aparezca y desaparezca el cuadro de diálogo Descargar e instalar, Visual Studio agregará la extensión Herramientas de Azure Data Lake y Stream Analytics a la programación de actualizaciones.

  6. Cierre todas las ventanas de Visual Studio. Aparecerá el cuadro de diálogo Instalador de VSIX.

  7. Seleccione Licencia para leer los términos de la licencia y, a continuación, seleccione Cerrar para volver al cuadro de diálogo Instalador de VSIX.

  8. Seleccione Modificar. Comienza la instalación de la actualización de la extensión. Pasado un tiempo, el cuadro de diálogo cambia para mostrar que ha terminado de realizar modificaciones. Seleccione Cerrar y, luego, reinicie Visual Studio para completar la instalación.

Nota

Puede utilizar solo Data Lake Tools, versión 2.3.0.0 o posterior, para conectarse a clústeres de Interactive Query y ejecutar consultas de Hive interactivas.

Conexión a suscripciones de Azure

Herramientas de Data Lake para Visual Studio se puede usar para conectarse a clústeres de HDInsight, realizar algunas operaciones básicas de administración y ejecutar consultas de Hive.

Nota

Para más información acerca de cómo conectarse a un clúster de Hadoop genérico, consulte Cómo escribir y enviar consultas de Hive mediante Visual Studio.

Conexión a una suscripción de Azure

Para conectarse a su suscripción de Azure:

  1. Abra Visual Studio.

  2. En la ventana de inicio, seleccione Continuar sin código.

  3. En la barra de menús del IDE, vaya a Ver>Explorador de servidores.

  4. En el Explorador de servidores, haga clic con el botón derecho en Azure, seleccione Conectar a la suscripción de Microsoft Azure y complete el proceso de autenticación. En el Explorador de servidores, expanda Azure>HDInsight para ver una lista de los clústeres de HDInsight existentes.

  5. Si no tiene ningún clúster, cree uno mediante Azure Portal, Azure PowerShell o el SDK de HDInsight. Para obtener más información, consulte Configuración de clústeres en HDInsight.

    HDInsight cluster list, Server Explorer, Visual Studio.

  6. Expanda un clúster de HDInsight. El clúster contiene nodos para Bases de datos de Hive. También una cuenta de almacenamiento predeterminada, cuentas de almacenamiento vinculadas adicionales y un registro del servicio Hadoop. Puede expandir las entidades.

Una vez conectado a su suscripción de Azure, puede realizar las siguientes tareas.

Conexión a Azure desde Visual Studio

Para conectarse a Azure Portal desde Visual Studio:

  1. En el Explorador de servidores, expanda Azure>HDInsight y seleccione el clúster.

  2. Haga clic con el botón derecho en un clúster de HDInsight y seleccione Administrar clústeres en Azure Portal.

Preguntas y comentarios desde Visual Studio

Para hacer preguntas y realizar comentarios desde Visual Studio:

  1. En el Explorador de servidores, seleccione Azure>HDInsight.

  2. Haga clic con el botón derecho en HDInsight y seleccione Foro de MSDN para formular preguntas, o bien Enviar comentarios para aportar sus comentarios.

Nota

Actualmente, el único tipo de clúster de HDInsight al que se puede vincular es un tipo Hive.

Para vincular un clúster de HDInsight:

  1. Haga clic con el botón derecho en HDInsight y, después, seleccione Vincular un clúster de HDInsight para mostrar el cuadro de diálogo Vincular un clúster de HDInsight.

  2. Escriba una dirección URL de conexión con el formato https://CLUSTERNAME.azurehdinsight.net. El nombre del clúster se rellena automáticamente con la parte del nombre del clúster de su dirección URL cuando se desplaza a otro campo. Escriba un nombre de usuario y una contraseña y seleccione Siguiente.

    Link a cluster, HDInsight, Visual Studio.

  3. Seleccione Finalizar. Si la vinculación del clúster se realiza correctamente, el clúster se muestra en el nodo HDInsight.

Para actualizar un clúster vinculado, haga clic con el botón derecho en el clúster y seleccione Editar. Después, puede actualizar la información del clúster.

Edit a linked cluster, HDInsight, Visual Studio.

Exploración de recursos vinculados

Desde el Explorador de servidores, podrá ver la cuenta de almacenamiento predeterminada y las cuentas de almacenamiento vinculadas. Expanda la cuenta de almacenamiento predeterminada para ver los contenedores en la cuenta de almacenamiento. Se marcarán la cuenta de almacenamiento predeterminada y el contenedor predeterminado.

Data Lake Tools for Visual Studio linked resources in Server Explorer.

Haga clic con el botón derecho en un contenedor y seleccione Ver contenedor para ver su contenido. Después de abrir un contenedor, puede usar los botones de la barra de herramientas Actualizar (para actualizar la lista de contenido), Cargar blobs, Eliminar blobs seleccionados, Abrir un blob y Guardar como (para descargar los blobs seleccionados).

Container list and blob operations, HDInsight cluster, Visual Studio.

Ejecución de consultas interactivas de Apache Hive

Apache Hive es una infraestructura de almacenamiento de datos que se basa en Hadoop. Hive se utiliza para el análisis, las consultas y resumen de los datos. Data Lake Tools para Visual Studio se puede usar para ejecutar consultas de Hive desde Visual Studio. Para obtener más información sobre Hive, consulte ¿Qué son Apache Hive y HiveQL en Azure HDInsight?.

Interactive Query en Azure HDInsight usa Hive en LLAP en Apache Hive 2.1. Interactive Query aporta interactividad a las complejas consultas de estilo de almacenamiento de datos en grandes conjuntos de datos almacenados. La ejecución de consultas de Hive en Interactive Query es mucho más rápida que los trabajos por lotes tradicionales de Hive.

Nota

Solo se pueden ejecutar consultas de Hive interactivas al conectarse a un clúster de HDInsight Interactive Query.

También se puede utilizar Data Lake Tools para Visual Studio para ver el contenido de un trabajo de Hive. Data Lake Tools para Visual Studio recopila y muestra los registros Yarn de determinados trabajos de Hive.

En el Explorador de servidores, vaya a Azure>HDInsight y seleccione el clúster. Este nodo es el punto de partida en el Explorador de servidores para las secciones que siguen.

Ver hivesampletable

Todos los clústeres de HDInsight tienen una tabla de Hive de ejemplo denominada hivesampletable.

En el clúster, seleccione Bases de datos de Hive>predeterminado>hivesampletable.

  • Para ver el esquema de hivesampletable:

    Expanda hivesampletable. Se muestran los nombres y los tipos de datos de las columnas de hivesampletable.

  • Para ver los datos de hivesampletable:

    Haga clic con el botón derecho en hivesampletable y seleccione Ver las 100 primeras filas. La lista con 100 resultados aparece en la ventana Tabla de Hive: hivesampletable. Esta acción equivale a ejecutar la siguiente consulta de Hive mediante el uso del controlador ODBC de Hive:

    SELECT * FROM hivesampletable LIMIT 100

    Puede personalizar el recuento de filas si cambia Número de filas; puede elegir 50, 100, 200 o 1000 filas en la lista desplegable.

Crear tablas de Hive

Para crear una tabla de Hive, puede usar la GUI o las consultas de Hive. Para obtener información acerca del uso de consultas de Hive, consulte Creación y ejecución de consultas de Hive.

  1. En el clúster, seleccione Bases de datos de Hive>predeterminado.

  2. Haga clic con el botón derecho en predeterminado y seleccione Crear tabla.

  3. Configure la tabla.

  4. Seleccione el botón Crear tabla para enviar el trabajo, de este modo se crea la nueva tabla de Hive.

    Create Table window, Hive, HDInsight cluster, Visual Studio.

Creación y ejecución de consultas de Hive

Para crear y ejecutar consultas de Hive tiene dos opciones:

  • Crear consultas ad hoc
  • Crear una aplicación de Hive

Creación de una consulta ad hoc

Para crear y ejecutar una consulta ad hoc:

  1. Haga clic con el botón derecho en el clúster en que desee ejecutar la consulta y seleccione Escribir una consulta de Hive.

  2. Especifique una consulta de Hive.

    El editor de Hive es compatible con IntelliSense. Data Lake Tools para Visual Studio es compatible con la carga de metadatos remotos cuando se edita un script de Hive. Por ejemplo, si escribe SELECT * FROM, IntelliSense enumera todos los nombres de tabla sugeridos. Cuando se especifica un nombre de tabla, IntelliSense enumera los nombres de columna. Las herramientas admiten casi todas las instrucciones DML de Hive, subconsultas y UDF integradas.

    IntelliSense example 1, Hive ad-hoc query, HDInsight cluster, Visual Studio.

    IntelliSense example 2, Hive ad-hoc query, HDInsight cluster, Visual Studio.

    Nota:

    IntelliSense solo sugiere los metadatos del clúster que se seleccionan en la barra de herramientas de HDInsight.

    Esta es una consulta de ejemplo que puede usar:

    SELECT devicemodel, COUNT(devicemodel) AS deviceCount
    FROM hivesampletable
    GROUP BY devicemodel
    ORDER BY devicemodel
    
  3. Elija el modo de ejecución:

    • Interactivo

      En la primera lista desplegable, elija Interactivo y, a continuación, seleccione Ejecutar.

      Interactive mode, Hive ad-hoc query, HDInsight cluster, Visual Studio.

    • Batch

      En la primera lista desplegable, elija Lote y, a continuación, seleccione Enviar. O bien, seleccione el icono desplegable situado junto a Enviar y elija Avanzado.

      Batch mode, Hive ad-hoc query, HDInsight cluster, Visual Studio.

      Si selecciona la opción de envío avanzado, aparecerá el cuadro de diálogo Enviar script. Configure el nombre del trabajo, los argumentos, las configuraciones adicionales y el estado de directorio del script.

      Submit Script dialog box, Hive ad-hoc query, HDInsight cluster, Visual Studio.

      Nota:

      No se pueden enviar lotes a clústeres de Interactive Query. Hay que usar el modo interactivo.

Crear una aplicación de Hive

Para crear y ejecutar una solución de Hive:

  1. En la barra de menús, elija Archivo>Nuevo>Proyecto.

  2. En la ventana Crear un nuevo proyecto, seleccione el cuadro de búsqueda y escriba Hive. A continuación, elija Aplicación de Hive y seleccione Siguiente.

  3. En la ventana Configure su nuevo proyecto, escriba un nombre de proyecto, elija o cree la ubicación del proyecto y, después, seleccione Crear.

    New Hive application, Configure your new project window, HDInsight Visual Studio.

  4. En el Explorador de soluciones, haga doble clic en Script.hql para abrir el script.

Visualización de salida y resumen del trabajo

El resumen del trabajo varía ligeramente entre los modos por lotes e interactivo.

Hive job summary windows, batch and interactive mode, Visual Studio.

Use el icono Actualizar para actualizar el estado hasta que el estado del trabajo cambie a Finalizado.

  • Para obtener detalles del trabajo del modo por lotes, seleccione los vínculos de la parte inferior para ver Consulta de trabajo, Salida del trabajo, Registro de trabajo o Ver registros de Yarn.

  • Para obtener detalles del trabajo del modo interactivo, vea los paneles Salida y Salida de HiveServer2.

    Hive interactive job output, HDInsight cluster, Visual Studio.

Visualización del gráfico del trabajo

Actualmente, solo se muestran gráficos de trabajo de los trabajos de Hive que usan Tez como motor de ejecución. Para obtener más información sobre la habilitación de Tez, consulte ¿Qué son Apache Hive y HiveQL en Azure HDInsight?. Vea también Uso de Apache Tez en lugar de MapReduce.

Para ver todos los operadores que hay en el vértice, haga doble clic en los vértices del gráfico del trabajo. También puede señalar a un operador concreto para ver más detalles de él.

Aun habiendo especificado Tez como motor de ejecución, es posible que no se muestre el gráfico del trabajo si no hay iniciada ninguna aplicación Tez. Esta situación puede producirse porque el trabajo no contiene instrucciones DML o porque las instrucciones DML pueden volver sin iniciar una aplicación Tez. Por ejemplo, SELECT * FROM table1 no iniciará la aplicación Tez.

Apache Hive job graph, Visual Studio.

Visualización de los detalles de ejecución de la tarea

En el gráfico del trabajo, se puede seleccionar Detalles de ejecución de la tarea para obtener información estructurada y visualizada de los trabajos de Hive. También puede obtener más información del trabajo. Si se produce algún problema de rendimiento, puede usar la vista para obtener más información sobre el mismo. Por ejemplo, puede recuperar información acerca de cómo funciona cada tarea e información detallada acerca de cada tarea (lectura y escritura de datos, hora de programación, de inicio o de fin, etc.). Esta información se puede usar para ajustar las configuraciones de trabajo o la arquitectura del sistema en función de la información visualizada.

Task Execution View window, Data Lake Visual Studio Tools.

Ver trabajos de Hive

Puede ver consultas de trabajo, salidas de trabajo, registros de trabajo y registros Yarn para trabajos de Hive.

En la versión más reciente de las herramientas puede ver el contenido de los trabajos de Hive al recopilar y exponer los registros Yarn. Un registro Yarn puede ayudarle a investigar problemas de rendimiento. Para más información acerca de la forma en que HDInsight recopila registros Yarn, consulte Acceso a registros de aplicación de YARN de Apache Hadoop.

Para ver trabajos de Hive:

  1. Haga clic con el botón derecho en un clúster de HDInsight y seleccione Ver trabajos.

    View Jobs, Apache Hive, HDInsight cluster, Visual Studio.

    Aparece una lista de los trabajos de Hive que se ejecutaron en el clúster.

  2. Seleccione un trabajo. En la ventana Resumen de trabajos de Hive, seleccione uno de los siguientes vínculos:

    • Consulta de trabajo
    • Salida de trabajo
    • Registro de trabajo
    • Registro de Yarn

Ejecución de scripts de Apache Pig

  1. En la barra de menús, elija Archivo>Nuevo>Proyecto.

  2. En la ventana de inicio, seleccione el cuadro de búsqueda y escriba Pig. Seleccione Aplicación Pig y, después, Siguiente.

  3. En la ventana Configure su nuevo proyecto, escriba un nombre de proyecto y elija o cree la ubicación del proyecto. Seleccione Crear.

  4. En el Explorador de soluciones del IDE, haga doble clic en Script.pig para abrir el script.

Comentarios y problemas conocidos

  • Se ha corregido un problema en el que no se muestran los resultados que comienzan por valores null. Si está bloqueado debido a este problema, póngase en contacto con el equipo de soporte técnico.

  • La codificación del script HQL que crea Visual Studio depende de la configuración regional del usuario. El script no se ejecuta correctamente si se carga en un clúster como un archivo binario.

Pasos siguientes

En este artículo, ha aprendido a usar el paquete Data Lake Tools para Visual Studio para establecer conexión a los clústeres de HDInsight desde Visual Studio. También ha aprendido a ejecutar una consulta de Hive.