Apache Hive

Esta página contiene información sobre cómo conectar Looker a Apache Hive 2.3 y versiones posteriores, y Apache Hive 3.1.2 o versiones posteriores.

Ten en cuenta lo siguiente sobre la compatibilidad de Looker con las diferentes versiones de Apache Hive:

  • Looker admite conexiones a Apache Hive 2.3 y versiones posteriores, y Apache Hive 3.1.2 y versiones posteriores.
  • Para Apache Hive 3.1.2+, Looker puede integrarse por completo con las bases de datos de Apache Hive 3 solo en versiones posteriores a la 3.1.2. Esto se debe a un problema de análisis de consultas de las versiones 2.4.0 a 3.1.2 de Hive que causó tiempos de análisis extremadamente largos para el SQL generado por Looker.
  • Looker no admite conexiones a Apache Hive 2. Las consultas sobre conexiones a Apache Hive 2 mostrarán un error.

Encripta el tráfico de red

Una práctica recomendada es encriptar el tráfico de red entre la aplicación de Looker y tu base de datos. Considera una de las opciones que se describen en la página de documentación Habilita el acceso seguro a la base de datos.

Introducción

Looker está diseñado para conectarse a un servidor de base de datos mediante JDBC. En el caso de Hive, este es el servidor de segunda mano (HiveServer2). Consulta la documentación de Apache para obtener más información.

De forma predeterminada, este servidor escuchará en el puerto 10000.

Looker es una herramienta de consultas interactiva, por lo que espera trabajar con un motor SQL interactivo. Si Hive se ejecuta en MapReduce (hive.execution.engine está configurado como mr), Hive mostrará los resultados de la consulta muy lento como para ser práctico.

Looker se probó con Hive en Tez (hive.execution.engine=tez), aunque también es posible ejecutar Looker con Hive en Spark. La compatibilidad con Spark se agregó en la versión 1.1 de Hive. (Looker es compatible con Hive 1.2.1 y versiones posteriores).

Tablas derivadas persistentes (PDT)

Para habilitar las tablas derivadas persistentes (PDT) en Looker mediante una conexión de Hive, crea un esquema temporal para que Looker lo use. El siguiente es un ejemplo de un comando que puedes usar para crear un esquema looker_scratch:

 CREATE SCHEMA looker_scratch;

La cuenta de usuario que Looker usa para conectarse a Hive (que puede ser anónima si no se usa autenticación) debe tener las siguientes capacidades en el esquema de borrador:

  • Crea tablas
  • Alterar tablas
  • Eliminar tablas

Prueba esto con un cliente de JDBC antes de intentar crear PDT con Hive.

Colas

Si quieres que las consultas de Looker vayan a una cola específica, ingresa el parámetro del nombre de la cola en el campo Parámetros adicionales de JDBC en la página Configuración de conexión:

?tez.queue.name=the_bi_queue

Otros parámetros de Hive se pueden configurar de esta manera en el campo Additional JDBC parameters en la página Connection Settings.

Mediante el uso de los atributos de usuario, es posible que las consultas de distintos usuarios o grupos de usuarios se incluyan en colas distintas. Para ello, crea un atributo de usuario con el nombre queue_name. Luego, en el campo Parámetros adicionales de JDBC, agrega lo siguiente:

?tez.queue.name={{ _user_attributes['queue_name'] }}

Puedes usar esta opción para personalizar otros parámetros de hive-site.xml por usuario o por grupo.

Creando la conexión de Looker a tu base de datos

Sigue estos pasos para crear la conexión de Looker a tu base de datos:

  1. En la sección Administrador de Looker, selecciona Conexiones y, luego, haz clic en Agregar conexión.
  2. Selecciona Apache Hive 2.3+ o Apache Hive 3.1.2+ en el menú desplegable Dialect.

  3. Completa los detalles de la conexión. La mayoría de los parámetros de configuración son comunes en la mayoría de los dialectos de bases de datos. Consulta la página de documentación Cómo conectar Looker a tu base de datos para obtener más información. A continuación, se describen algunos de los parámetros de configuración:

    • Nombre: Especifica el nombre de la conexión. Así es como harás referencia a la conexión en los proyectos de LookML.
    • Host: Especifica el nombre de host.
    • Puerto: especifica el puerto de la base de datos.
    • Base de datos: Especifica el nombre de la base de datos.
    • Nombre de usuario: Especifica el nombre de usuario de la base de datos.
    • Contraseña: Especifica la contraseña de usuario de la base de datos.
    • Habilitar PDT: Usa este botón de activación para habilitar tablas derivadas persistentes. Cuando las PDT están habilitadas, la ventana Connection muestra parámetros de configuración adicionales de PDT y la sección PDT Overrides.
    • Temp Database: Especifica el nombre del esquema temporal creado en la sección Tablas derivadas persistentes (PDT) de esta página de documentación.
    • Cantidad máxima de conexiones del compilador de PDT: Especifica la cantidad de compilaciones de PDT simultáneas posibles en esta conexión. Si estableces este valor demasiado alto, es posible que se vean afectados los tiempos de las búsquedas. Para obtener más información, consulta la página de documentación Cómo conectar Looker a tu base de datos.
    • Parámetros adicionales de JDBC: Especifica cualquier parámetro de string de JDBC adicional.
    • Programa de mantenimiento de grupos de datos y PDT: Especifica una expresión cron que indique cuándo Looker debe verificar grupos de datos y tablas derivadas persistentes. Documentación del Programa de mantenimiento de PDT y grupos de datos.
    • SSL: marca esta opción para usar conexiones SSL.
    • Verificar SSL: Comprueba que el nombre de host verifique la verificación.
    • Cantidad máxima de conexiones por nodo: Inicialmente, este parámetro de configuración puede dejarse con el valor predeterminado. Consulta la página de documentación Cómo conectar Looker a tu base de datos para obtener más información.
    • Tiempo de espera del grupo de conexiones: Inicialmente, este parámetro de configuración se puede dejar con el valor predeterminado. Obtén más información sobre este parámetro de configuración en la sección Tiempo de espera del grupo de conexiones de la página de documentación Conecta Looker a tu base de datos.
    • Precaché del Ejecutor de SQL: Para que el Ejecutor de SQL no cargue previamente la información de la tabla y la cargue solo cuando una tabla esté seleccionada, desmarca esta opción. Obtén más información sobre este parámetro de configuración en la sección Precache de SQL Runner de la página de documentación Conecta Looker a tu base de datos.
    • Zona horaria de la base de datos: especifica la zona horaria de la base de datos. Deja este campo en blanco si no deseas que se realice la conversión de zona horaria. Consulta la página de documentación Usa la configuración de zona horaria para obtener más información.
  4. Para verificar que la conexión se haya realizado correctamente, haz clic en Probar. Consulta la página de documentación Prueba la conectividad de la base de datos para obtener información sobre la solución de problemas.

  5. Para guardar esta configuración, haz clic en Conectar.

Compatibilidad de características

Para que Looker admita algunas funciones, el dialecto de la base de datos también debe admitirlas.

Apache Hive 2.3 o versiones posteriores

Apache Hive 2.3+ admite las siguientes funciones a partir de Looker 24.8:

Atributo ¿Es compatible?
Nivel de asistencia
Integración
Looker (Google Cloud Core)
No
Agregados simétricos
No
Tablas derivadas
Tablas derivadas de SQL persistentes
Tablas derivadas persistentes nativas
Vistas estables
Finalización de consultas
Tablas dinámicas basadas en SQL
No
Zonas horarias
SSL
Subtotales
Parámetros adicionales de JDBC
Distingue mayúsculas de minúsculas
Tipo de ubicación
Tipo de lista
Percentil
Percentil distinto
No
Procesos de presentación del ejecutor de SQL
No
Tabla de descripción del ejecutor de SQL
Mostrar índices del ejecutor de SQL
Selector de SQL 10 Select
Recuento de ejecutores de SQL
Explicación de SQL
Credenciales de OAuth
No
Comentarios de contexto
Agrupación de conexiones
No
Bocetos HLL
No
Reconocimiento agregado
PDT incrementales
No
Milisegundos
Microsegundos
Vistas materializadas
No
Recuento aproximado de valores distintos
No

Apache Hive 3.1.2 o versiones posteriores

Apache Hive 3.1.2+ es compatible con las siguientes funciones a partir de Looker 24.8:

Atributo ¿Es compatible?
Nivel de asistencia
Admitido
Looker (Google Cloud Core)
Agregados simétricos
No
Tablas derivadas
Tablas derivadas de SQL persistentes
Tablas derivadas persistentes nativas
Vistas estables
Finalización de consultas
Tablas dinámicas basadas en SQL
No
Zonas horarias
SSL
Subtotales
Parámetros adicionales de JDBC
Distingue mayúsculas de minúsculas
Tipo de ubicación
Tipo de lista
Percentil
Percentil distinto
No
Procesos de presentación del ejecutor de SQL
No
Tabla de descripción del ejecutor de SQL
Mostrar índices del ejecutor de SQL
No
Selector de SQL 10 Select
Recuento de ejecutores de SQL
Explicación de SQL
Credenciales de OAuth
No
Comentarios de contexto
Agrupación de conexiones
No
Bocetos HLL
No
Reconocimiento agregado
PDT incrementales
No
Milisegundos
Microsegundos
Vistas materializadas
No
Recuento aproximado de valores distintos
No

Próximos pasos

Después de conectar tu base de datos a Looker, configura las opciones de acceso para tus usuarios.