Conexión de Tableau a Azure Databricks

En este artículo se muestra cómo conectar Azure Databricks a Tableau Desktop y se incluye información sobre otras ediciones de Tableau. Puede conectarse mediante Partner Connect o bien manualmente.

Al usar Azure Databricks como un origen de datos con Tableau, puede proporcionar análisis interactivos eficaces, lo que permite que los científicos de datos y los ingenieros de datos realicen contribuciones a los analistas de negocios mediante el escalado a conjuntos de datos masivos.

Para obtener más información sobre cómo usar Tableau Desktop para compilar informes y visualizaciones, lea Tutorial: introducción a Tableau Desktop.

Requisitos

Conexión a Tableau Desktop mediante Partner Connect

Puede usar Partner Connect para conectar un clúster o un almacén de SQL con Tableau Desktop con tan solo unos clics.

  1. Asegúrese de que su cuenta de Azure Databricks, el área de trabajo y el usuario que ha iniciado sesión cumplen los requisitos de Partner Connect.
  2. En la barra lateral, haga clic en el botón Partner ConnectPartner Connect.
  3. Haga clic en el icono Tableau.
  4. En el cuadro de diálogo Connect to partner (Conectar con un asociado), en Compute (Proceso), elija el nombre del recurso de proceso de Azure Databricks que quiere conectar.
  5. Elija Download connection file (Descargar archivo de conexión).
  6. Abra el archivo de conexión descargado, que inicia Tableau Desktop.
  7. En Tableau Desktop, escriba las credenciales de autenticación y haga clic en Iniciar sesión:
    • Para usar un token de Microsoft Entra ID, escriba token en Nombre de usuario y el token de Microsoft Entra ID en Contraseña.
    • Para usar un token de acceso personal de Azure Databricks, escriba el token para Nombre de usuario y el token de acceso personal como Contraseña.
    • Para usar las credenciales de Microsoft Entra ID, haga clic en Editar conexión, haga doble clic en la base de datos en la pestaña Datos y, a continuación, seleccione Microsoft Entra ID en la lista Autenticación.
      • Para Tableau Desktop 2021.1 y posteriores:

        1. Si no usa una cuenta de invitado B2B de Microsoft Entra ID (anteriormente, Azure Active Directory) ni Azure Databricks en Azure Government, basta con que escriba https://login.microsoftonline.com/common como Punto de conexión para OAuth.

        Autorización de configuración

        1. En caso de que use una cuenta de invitado B2B de Microsoft Entra ID o Azure Databricks en Azure Government, póngase en contacto con el administrador para obtener un almacén de Microsoft Entra ID dedicado.

        Nota:

        Si no es administrador, se mostrará el error Necesita aprobación del administrador. Pida a un administrador global, un administrador de aplicaciones en la nube o un administrador de aplicaciones que le conceda permisos para conectarse a Tableau y, a continuación, intente iniciar sesión de nuevo.

        Si su cuenta de Microsoft Entra ID tiene habilitado el flujo de trabajo de consentimiento del administrador, Tableau Desktop le pedirá que solicite acceso a Tableau. Después de que un administrador global, un administrador de aplicaciones en la nube o un administrador de aplicaciones apruebe la solicitud, intente iniciar sesión de nuevo.

Después de conectarse correctamente con Tableau Desktop, puede detenerse aquí. El resto de este artículo trata información adicional sobre Tableau, como la conexión manual con Tableau Desktop, la configuración de Tableau Server en Linux, el uso de Tableau Online y los procedimientos recomendados y la solución de problemas con Tableau.

Conexión manual a Tableau Desktop

Siga estas instrucciones para conectarse a un clúster o a un almacén de SQL con Tableau Desktop.

Nota:

Para conectarse más rápido con Tableau Desktop, use Partner Connect.

  1. Inicie Tableau Desktop.

  2. Haga clic en Archivo > Nuevo.

  3. En la pestaña Datos, haga clic en Conectar con datos.

  4. En la lista de conectores, haga clic en Databricks.

  5. Escriba el nombre de host del servidor y la ruta de acceso HTTP.

  6. En Autenticación, elija el método de autenticación, escriba las credenciales de autenticación y, a continuación, haga clic en Iniciar sesión.

    • Para usar un token de Microsoft Entra ID, seleccione Token de acceso personal y escriba el token de Microsoft Entra ID en Contraseña.

    • Para usar un token de acceso personal de Azure Databricks, seleccione Token de acceso personal y escriba el token de acceso personal como Contraseña.

    • Para usar las credenciales de Microsoft Entra ID, seleccione Microsoft Entra ID.

      Para Tableau Desktop 2021.1 y posteriores:

      • Si no usa una cuenta de invitado B2B de Microsoft Entra ID (anteriormente, Azure Active Directory) ni Azure Databricks en Azure Government, basta con que escriba https://login.microsoftonline.com/common como Punto de conexión para OAuth.

        Autorización de configuración

        • En caso de que use una cuenta de invitado B2B de Microsoft Entra ID o Azure Databricks en Azure Government, póngase en contacto con el administrador para obtener un almacén de Microsoft Entra ID dedicado.

      Nota:

      Si no es administrador, se mostrará el error Necesita aprobación del administrador. Pida a un administrador global, un administrador de aplicaciones en la nube o un administrador de aplicaciones que le conceda permisos para conectarse a Tableau y, a continuación, intente iniciar sesión de nuevo.

      Si su cuenta de Microsoft Entra ID tiene habilitado el flujo de trabajo de consentimiento del administrador, Tableau Desktop le pedirá que solicite acceso a Tableau. Después de que un administrador global, un administrador de aplicaciones en la nube o un administrador de aplicaciones apruebe la solicitud, intente iniciar sesión de nuevo.

    Si el catálogo de Unity está habilitado para el área de trabajo, establezca además el catálogo predeterminado. En la pestaña Opciones avanzadas, en Propiedades de conexión, agregue Catalog=<catalog-name>. Para cambiar el catálogo predeterminado, en la pestaña SQL inicial, escriba USE CATALOG <catalog-name>.

Después de conectarse correctamente con Tableau Desktop, puede detenerse aquí. El resto de este artículo trata información adicional sobre Tableau, como la configuración de Tableau Server en Linux, el uso de Tableau Online y los procedimientos recomendados y la solución de problemas con Tableau.

Tableau Server en Linux

Edite /etc/odbcinst.ini para incluir lo siguiente:

[Simba Spark ODBC Driver 64-bit]
Description=Simba Spark ODBC Driver (64-bit)
Driver=/opt/simba/spark/lib/64/libsparkodbc_sb64.so

Nota:

Tableau Server en Linux recomienda una arquitectura de procesamiento de 64 bits.

Publicación y actualización de un libro en Tableau Online

En este artículo se muestra cómo publicar un libro de Tableau Desktop en Tableau Online y mantenerlo actualizado cuando cambie el origen de datos. Necesita un libro en Tableau Desktop y una cuenta de Tableau Online.

  1. Extraer los datos del libro de Tableau Desktop: en Tableau Desktop, con el libro que desea publicar mostrado, haga clic en Datos ><data-source-name>> Extraer datos.
  2. En el cuadro de diálogo Extraer datos, haga clic en Extraer.
  3. Vaya a una ubicación en el equipo local donde quiera guardar los datos extraídos y, a continuación, haga clic en Guardar.
  4. Publicar el origen de datos del libro en Tableau Online: en Tableau Desktop, haga clic en Servidor > Publish Data Source (Publicar origen de datos) ><data-source-name>.
  5. Si se muestra el cuadro de diálogo Tableau Server Sign In (Inicio de sesión de Tableau Server), haga clic en el vínculo Tableau Online y siga las instrucciones en pantalla para iniciar sesión en Tableau Online.
  6. En el cuadro de diálogo Publish Data Source to Tableau Online (Publicar origen de datos en Tableau Online), junto a Refresh Not Enabled (Actualizar no habilitado), haga clic en el vínculo Editar.
  7. En el cuadro de control desplegable que se muestra, en Autenticación, cambie Refresh not enabled (Actualizar no habilitado) a Allow refresh access (Permitir acceso de actualización).
  8. Haga clic en cualquier lugar fuera de este control flotante para ocultarlo.
  9. Seleccione Update workbook to use the published data source (Actualizar libro para usar el origen de datos publicado).
  10. Haga clic en Publicar. El origen de datos se muestra en Tableau Online.
  11. En Tableau Online, en el cuadro de diálogo Publishing Complete (Publicación completada), haga clic en Schedule (Programación) y siga las instrucciones en pantalla.
  12. Publicar el libro en Tableau Online: en Tableau Desktop, con el libro que desea publicar mostrado, haga clic en Servidor > Publish Workbook (Publicar libro).
  13. En el cuadro de diálogo Publish Workbook to Tableau Online (Publicar libro en Tableau Online), haga clic en Publicar. El libro se muestra en Tableau Online.

Tableau Online comprueba si hay cambios en el origen de datos según la programación establecida y actualiza el libro publicado si se detectan cambios.

Para más información, vea lo siguiente en el sitio web de Tableau:

Procedimientos recomendados y solución de problemas

Las dos acciones fundamentales para optimizar las consultas de Tableau son:

  • Reducir el número de registros que se consultan y visualizan en un solo gráfico o panel.
  • Reducir el número de consultas enviadas por Tableau en un solo gráfico o panel.

Decidir qué probar primero depende del panel. Si tiene una serie de gráficos diferentes para usuarios individuales en el mismo panel, es probable que Tableau envíe demasiadas consultas a Azure Databricks. Si solo tiene un par de gráficos, pero tardan mucho tiempo en cargarse, lo más probable es que Azure Databricks esté devolviendo demasiados registros como para que se carguen de forma eficaz.

El registro de rendimiento de Tableau, disponible en Tableau Desktop y Tableau Server, puede ayudarle a detectar dónde están los cuellos de botella de rendimiento mediante la identificación de los procesos que están causando latencia al ejecutar un flujo de trabajo o panel determinados.

Habilitación del registro de rendimiento para depurar cualquier problema de Tableau

Por ejemplo, si la ejecución de consultas es el problema, sabe que tiene que ver con el proceso del motor de datos o con el origen de datos que está consultando. Si el diseño visual funciona lentamente, sabe que se trata de VizQL.

Si el registro de rendimiento indica que la latencia está en la ejecución de la consulta, es probable que Azure Databricks esté tardando demasiado tiempo en devolver los resultados o que la superposición de ODBC/Conector esté tardando demasiado tiempo en procesar los datos en SQL para VizQL. Cuando esto sucede, debe analizar lo que se devuelve e intentar cambiar el patrón analítico para que tenga un panel por grupo, segmento o artículo en lugar de intentar convertir todo en un panel y confiar en Filtros rápidos.

Si el rendimiento bajo se debe a la ordenación o al diseño visual, el problema puede ser el número de marcas que el panel intenta devolver. Azure Databricks puede devolver un millón de registros rápidamente, pero es posible que Tableau no pueda procesar el diseño y ordenar los resultados. Si se trata de un problema, agregue la consulta y explore en profundidad los niveles inferiores. También puede probar una máquina más grande, ya que Tableau solo está restringido por recursos físicos en la máquina en la que se ejecuta.

Para obtener un tutorial detallado sobre el registrador de rendimiento, vea Creación de un registro de rendimiento.

Rendimiento en Tableau Server frente a Tableau Desktop

En general, un flujo de trabajo que se ejecuta en Tableau Desktop no es más rápido en Tableau Server. Un panel que no se ejecute en Tableau Desktop no se ejecutará en Tableau Server. Esto es importante tenerlo en cuenta.

De hecho, trabajar con Desktop es una técnica mejor para solucionar problemas, porque Tableau Server tienen más procesos que se deben tener en cuenta al solucionar problemas. Y si las cosas funcionan en Tableau Desktop, pero no en Tableau Server, puede restringir el problema de forma segura a los procesos de Tableau Server que no están en Tableau Desktop.

Configuración

De forma predeterminada, los parámetros de la dirección URL de conexión reemplazan a los del DSN de ODBC en Simba. Hay dos maneras de personalizar las configuraciones de ODBC desde Tableau:

  • Archivo .tds para un único origen de datos:

    1. Siga las instrucciones de Guardar orígenes de datos para exportar el archivo .tds para el origen de datos.
    2. Busque la línea de propiedades odbc-connect-string-extras='' en el archivo .tds y establezca los parámetros. Por ejemplo, para habilitar AutoReconnect y UseNativeQuery, puede cambiar la línea a odbc-connect-string-extras='AutoReconnect=1,UseNativeQuery=1'.
    3. Vuelva a cargar el archivo .tds; para ello, restablezca la conexión.

    El recurso de proceso está optimizado para usar menos memoria de montón para recopilar resultados grandes, por lo que puede controlar más filas por bloque de captura que la opción predeterminada de ODBC en Simba. Anexe RowsFetchedPerBlock=100000' al valor de la propiedad odbc-connect-string-extras.

  • Archivo .tdc para todos los orígenes de datos:

    1. Si nunca ha creado un archivo .tdc, puede agregar TableauTdcExample.tdc a la carpeta Document/My Tableau Repository/Datasources.
    2. Agregue el archivo a las instalaciones de Tableau Desktop de todos los desarrolladores para que funcione cuando se compartan los paneles.

Optimización de gráficos (hojas de cálculo)

Hay una serie de optimizaciones tácticas de gráficos que pueden ayudarle a mejorar el rendimiento de las hojas de cálculo de Tableau.

En el caso de los filtros que no suelen cambiar y que no están diseñados para interactuar con ellos, use filtros de contexto, que aceleran el tiempo de ejecución. Otra buena regla general es usar instrucciones if/else en lugar de instrucciones case/when en las consultas.

Tableau puede insertar filtros en orígenes de datos, lo que puede acelerar significativamente las velocidades de consulta. Vea Filtrado entre varios orígenes de datos mediante un parámetro y Filtrado de datos entre varios orígenes de datos para obtener más información sobre los filtros de inserción de orígenes de datos.

Es mejor evitar los cálculos de tabla si es posible porque necesitan examinar el conjunto de datos completo. Para más información sobre los cálculos de tabla, vea Transformación de valores con cálculos de tabla.

Optimización de paneles

A continuación se presentan una serie de sugerencias y ejercicios de solución de problemas que puede aplicar para mejorar el rendimiento del panel de Tableau.

Una fuente común de problemas con los paneles de Tableau conectados a Azure Databricks es el uso de filtros rápidos en paneles individuales que sirven para varios usuarios, funciones o segmentos diferentes. Puede adjuntar filtros rápidos globales a todos los gráficos del panel. Es una característica excelente, pero que puede causar problemas rápidamente. Un filtro rápido global en un panel con cinco gráficos provoca el envío de un mínimo de 10 consultas a Azure Databricks. Este número puede aumentar a medida que se agregan más filtros y puede causar problemas de rendimiento masivos, ya que Spark no está diseñado para controlar muchas consultas simultáneas a partir del mismo momento. Esto se vuelve más problemático cuando un clúster de Databricks o un almacén de SQL que está usando no es lo suficientemente grande como para administrar el gran volumen de consultas.

Como primer paso, se recomienda usar el registro de rendimiento de Tableau para solucionar los problemas que podrían estar causando la incidencia.

Si el rendimiento bajo se debe a la ordenación o al diseño visual, el problema puede ser el número de marcas que el panel intenta devolver. Azure Databricks puede devolver un millón de registros rápidamente, pero es posible que Tableau no pueda procesar el diseño y ordenar los resultados. Si se trata de un problema, agregue la consulta y explore en profundidad los niveles inferiores. También puede probar una máquina más grande, ya que Tableau solo está restringido por recursos físicos en la máquina en la que se ejecuta.

Para obtener información sobre la exploración en profundidad en Tableau, vea Exploración en profundidad de los detalles.

En general, ver muchas marcas granulares suele ser un patrón analítico deficiente, porque no proporciona información detallada. La exploración en profundidad desde niveles más altos de agregación resulta más conveniente y reduce el número de registros que deben procesarse y visualizarse.

Uso de acciones para optimizar paneles

Para explorar en profundidad de un grupo a un segmento y a un artículo a fin de obtener los mismos análisis e información que el panel "ocean boiled", puede usar las acciones de Tableau. Las acciones permiten hacer clic en una marca (por ejemplo, un estado en un mapa) y enviarla a otro panel que filtra en función del estado en el que hace clic. Esto reduce la necesidad de tener muchos filtros en un panel y reduce el número de registros que se deben generar, ya que se puede establecer una acción para que no genere registros hasta que se obtenga un predicado por el que filtrar.

Para más información, vea Acciones y Seis sugerencias para mejorar el rendimiento de los paneles.

Almacenamiento en memoria caché

El almacenamiento de datos en caché es una buena forma de mejorar el rendimiento de las hojas de cálculo o los paneles.

Almacenamiento en caché en Tableau

Tableau tiene cuatro capas de almacenamiento en caché antes de volver a los datos, ya sea en una conexión dinámica o en una extracción:

  • Iconos: si alguien carga exactamente el mismo panel y no cambia nada, Tableau intenta reutilizar los mismos iconos para los gráficos. Esto es similar a los iconos de Google Maps.
  • Modelo: hay cálculos matemáticos que se usan para generar visualizaciones en caso de que no se puedan usar iconos. Tableau Server intenta usar los mismos modelos.
  • Resumen: también se almacenan los resultados agregados de las consultas. Este es el tercer nivel de "defensa". Si una consulta devuelve Sum(Sales), Count(orders), Sum(Cost) en una consulta anterior y una consulta futura solo necesita Sum(Sales), Tableau toma ese resultado y lo usa.
  • Caché nativa: si la consulta es exactamente igual que otra, Tableau usa los mismos resultados. Este es el último nivel de almacenamiento en caché. Si se produce un error, Tableau recurre a los datos.

Frecuencia del almacenamiento en caché en Tableau

Tableau tiene una configuración administrativa para almacenar en caché con más o menos frecuencia. Si el servidor se establece en Refresh Less Often (Actualizar con menos frecuencia), Tableau mantiene los datos en la memoria caché durante un máximo de 12 horas. Si se establece en Refresh More Often (Actualizar con más frecuencia), Tableau vuelve a los datos de la actualización de cada página.

Los clientes que tienen el mismo panel que se vuelve a usar (por ejemplo, "Informes de canalización del lunes por la mañana") deben estar en un servidor configurado para actualizarse con menos frecuencia para que todos los paneles usen la misma caché.

Preparación de la caché en Tableau

En Tableau, puede preparar la memoria caché mediante la configuración de una suscripción para que el panel se envíe antes de que desee que se visualice el panel. Esto se debe a que el panel debe representarse para generar la imagen para el correo electrónico de suscripción. Vea Preparación de la caché de Tableau Server mediante suscripciones.

Tableau Desktop: se muestra el error The drivers... are not properly installed

Problema: al intentar conectar Tableau Desktop a Databricks, Tableau muestra un mensaje de error en el cuadro de diálogo de conexión con un vínculo a la página de descarga del controlador, donde puede encontrar vínculos de controladores e instrucciones de instalación.

Causa: la instalación de Tableau Desktop no ejecuta un controlador compatible.

Solución: descargue la versión 2.6.15 o posterior del controlador ODBC de Databricks.

Vea también: error "The drivers… are not properly installed" (Los controladores no están instalados correctamente) en el sitio web de Tableau.

Recursos adicionales