Conecte o Tableau ao Databricks

Este artigo mostra como conectar o Databricks ao Tableau Desktop e inclui informações sobre outras edições do Tableau. Você pode se conectar por meio do Partner Connect ou manualmente.

Ao usar o Databricks como fonte de dados com o Tableau, você pode fornecer análises interativas poderosas, trazendo as contribuições de seu cientista de dados e engenheiro de dados para seu analista de negócios, dimensionando para dataset massivo.

Para saber mais sobre como usar o Tableau Desktop para criar relatórios e visualizações, leia Tutorial: Comece a usar o Tableau Desktop.

Requisitos

Conecte o controle de dados do Databricks Unity Catalog ao Tableau

Conecte o gerenciamento de dados pelo Hive metastore ao Tableau

  • Tableau Desktop 2019.3 ouacima.

  • Databricks ODBC Driver 2.6.15 ouacima.

Opções de autenticação

Use uma das seguintes opções de autenticação:

  • (Recomendado) Tableau habilitado como um aplicativo OAuth em seu account. O Tableau Desktop é habilitado pelo site default. Para habilitar o Tableau Cloud ou o Tableau Server, consulte Configurar o logon do Databricks no Tableau Server.

    Somente usuários inscritos no provedor de identidade interno (IdP) do Tableau podem autenticar usando logon único (SSO). Os tokens OAuth para Tableau expiram após 90 dias.

  • Um access tokenpessoal do Databricks.

    Observação

    Como prática recomendada de segurança ao se autenticar com ferramentas, sistemas, scripts e aplicativos automatizados, a Databricks recomenda que você use tokens OAuth.

    Se utilizar a autenticação access token pessoal, a Databricks recomenda a utilização access token pessoal pertencente à entidade de serviço em vez de utilizadores workspace . Para criar tokens para entidades de serviço, consulte gerenciar tokens para uma entidade de serviço.

  • Um nome de usuário do Databricks (normalmente seu endereço email ) e senha.

    A autenticação de nome de usuário e senha pode ser desabilitada se seu workspace Databricks estiver habilitado para logon único (SSO). Em caso afirmativo, use access tokens pessoal do Databricks.

Conecte-se ao Tableau Desktop usando Partner Connect

Você pode usar o Partner Connect para conectar clusters ou SQL warehouse ao Tableau Desktop com apenas alguns cliques.

  1. Certifique-se de que sua account Databricks, workspace e o usuário conectado atendam aos requisitos para Partner Connect.

  2. Na barra lateral, clique em Botão Conectar Parceiros parceiros Conectar.

  3. Clique no bloco do Tableau .

  4. Na caixa de diálogo Conectar-se a parceiros , para compute, escolha o nome do recurso compute do Databricks que você deseja conectar.

  5. Escolha o arquivo de conexãodownloads .

  6. Abra o arquivo de conexão downloads , que começará o Tableau Desktop.

  7. No Tableau Desktop, insira suas credenciais de autenticação e clique em Entrar:

    • Para usar access tokens pessoal do Databricks, insira tokens para Nome de usuário e seus access tokens pessoal para Senha.

    • Para usar um nome de usuário e senha do Databricks, insira seu nome de usuário em Username e sua senha em Password.

Depois de se conectar com sucesso ao Tableau Desktop, você pode parar aqui. As informações restantes neste artigo abrangem informações adicionais sobre o Tableau, como conectar-se manualmente com o Tableau Desktop, configurar o Tableau Server no Linux, como usar o Tableau Online e práticas recomendadas e solução de problemas com o Tableau.

Conecte-se ao Tableau Desktop manualmente

Siga estas instruções para se conectar a clusters ou SQL warehouse com o Tableau Desktop.

Observação

Para se conectar mais rapidamente com o Tableau Desktop, use o Partner Connect.

  1. começar Tableau Desktop.

  2. Clique em Arquivo > Novo.

  3. Na tab Dados , clique em Conectar aos dados.

  4. Na lista de conectores, clique em Databricks.

  5. Digite o hostnamedo servidor e o caminho HTTP.

  6. Para Autenticação, escolha seu método de autenticação, insira suas credenciais de autenticação e clique em Entrar.

    • Para usar access tokens pessoal do Databricks, selecione access tokenspessoal e insira seus access tokens pessoal para Senha.

    • Para usar um nome de usuário e senha do Databricks, selecione Nome de usuário/Senha e insira seu nome de usuário em Nome de usuário e sua senha em Senha.

    • ID de entrada do OAuth/Microsoft. Para endpoint OAuth, insira https://{<server-hostname>}/oidc, onde <server-hostname> é o hostnamedo servidor para seus clusters ou SQL warehouse. Uma janela do navegador é aberta e solicita que você faça login no seu IdP.

    Se Unity Catalog estiver habilitado para seu workspace, defina adicionalmente o catálogo default . Na tab Avançado , para Propriedades da conexão, adicione Catalog=<catalog-name>. Para alterar o catálogo default , na tab SQL inicial , digite USE CATALOG <catalog-name>.

Depois de se conectar com sucesso ao Tableau Desktop, você pode parar aqui. As informações restantes neste artigo abordam informações adicionais sobre o Tableau, como configurar o Tableau Server no Linux, como usar o Tableau Online e práticas recomendadas e solução de problemas com o Tableau.

Tableau Server no Linux

Edite /etc/odbcinst.ini para incluir o seguinte:

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

Observação

O Tableau Server no Linux recomenda a arquitetura de processamento de 64 bits.

Publicar e atualizar uma pasta de trabalho no Tableau Online

Este artigo mostra como publicar uma pasta de trabalho do Tableau Desktop no Tableau Online e mantê-la atualizada quando a fonte de dados muda. Você precisa de uma pasta de trabalho no Tableau Desktop e uma account do Tableau Online .

  1. Extraia os dados da pasta de trabalho do Tableau Desktop: no Tableau Desktop, com a pasta de trabalho que deseja publicar exibida, clique em Dados > <data-source-name> > garantia de dados.

  2. Na caixa de diálogo de transmissão de dados , clique em Extrair.

  3. Navegue até um local em sua máquina local onde deseja salvar a herança de dados e clique em Salvar.

  4. Publique a fonte de dados da pasta de trabalho no Tableau Online: no Tableau Desktop, clique em Servidor > Publicar fonte de dados > <data-source-name>.

  5. Se a caixa de diálogo Entrar do Tableau Server for exibida, clique no link Tableau Online e siga as instruções na tela para entrar no Tableau Online.

  6. Na caixa de diálogo Publicar fonte de dados no Tableau Online , ao lado de refresh não habilitado, clique no link Editar .

  7. Na caixa suspensa exibida, para Autenticação, altere refresh não habilitada para Permitir acesso refresh .

  8. Clique em qualquer lugar fora deste submenu para ocultá-lo.

  9. Selecione Atualizar pasta de trabalho para usar a fonte de dados publicada.

  10. Clique em Publicar. A fonte de dados é exibida no Tableau Online.

  11. No Tableau Online, na caixa de diálogo Publicação concluída , clique em programar e siga as instruções na tela.

  12. Publique a pasta de trabalho no Tableau Online: no Tableau Desktop, com a pasta de trabalho que deseja publicar exibida, clique em Servidor > Publicar pasta de trabalho.

  13. Na caixa de diálogo Publicar pasta de trabalho no Tableau Online , clique em Publicar. A pasta de trabalho é exibida no Tableau Online.

O Tableau Online verifica se há alterações na fonte de dados de acordo com o programar que você definiu e atualiza a pasta de trabalho publicada se forem detectadas alterações.

Para obter mais informações, consulte o seguinte no site do Tableau:

Práticas recomendadas e solução de problemas

As duas ações fundamentais para otimizar query do Tableau são:

  • Reduza o número de registros sendo query e visualizados em um único gráfico ou painel.

  • Reduza o número de query enviadas pelo Tableau em um único gráfico ou painel.

Decidir qual tentar primeiro depende do seu painel. Se você tiver vários gráficos diferentes para usuários individuais no mesmo painel, é provável que o Tableau esteja enviando muitas query ao Databricks. Se você tiver apenas alguns gráficos, mas eles demoram muito para carregar, provavelmente há muitos registros sendo retornados pelo Databricks para serem carregados com eficiência.

A gravação de desempenho do Tableau, disponível no Tableau Desktop e no Tableau Server, pode ajudá-lo a entender onde estão os gargalos de desempenho, identificando os processos que estão causando latência ao executar um determinado fluxo de trabalho ou painel.

Habilite a gravação de desempenho para depurar qualquer problema do Tableau

Por exemplo, se a execução query for o problema, você sabe que tem a ver com o processo do processador de dados ou com a fonte de dados que está query . Se o desempenho visual estiver lento, você saberá que é o VizQL.

Se a gravação de desempenho disser que a latência está na execução query, é provável que muito tempo seja gasto por Databricks retornando os resultados ou pela sobreposição ODBC/Connector processando os dados em SQL para VizQL. Quando isso ocorrer, você deve analisar o que está retornando e tentar alterar o padrão analítico para ter um painel por grupo, segmento ou artigo, em vez de tentar amontoar tudo em um painel e confiar em Filtros rápidos.

Se o baixo desempenho for causado por classificação ou disposição visual, o problema pode ser o número de marcas que o painel está tentando retornar. O Databricks pode retornar um milhão de registros rapidamente, mas o Tableau pode não ser capaz de compute a disposição e classificar os resultados. Se isso for um problema, agregue a query e faça drill nos níveis mais baixo. Você também pode tentar uma máquina maior, pois o Tableau é limitado apenas pelos recursos físicos da máquina em que está sendo executado.

Para obter um tutorial detalhado sobre o gravador de desempenho, consulte Criar uma gravação de desempenho.

desempenho no Tableau Server versus Tableau Desktop

Em geral, um fluxo de trabalho executado no Tableau Desktop não é mais rápido no Tableau Server. Um painel que não é executado no Tableau Desktop não será executado no Tableau Server. Isso é importante ter em mente.

Na verdade, fazer as coisas funcionarem no Desktop é uma técnica de solução de problemas muito melhor, porque o Tableau Server tem mais processos a serem considerados ao solucionar problemas. E se as coisas funcionarem no Tableau Desktop, mas não no Tableau Server, você poderá restringir o problema com segurança aos processos no Tableau Server que não estão no Tableau Desktop.

Configuração

Por default, os parâmetros da URL de conexão substituem aqueles no Simba ODBC DSN. Há duas maneiras de personalizar as configurações de ODBC no Tableau:

  • .tds arquivo para uma única fonte de dados:

    1. Siga as instruções em Salvar fontes de dados para exportar o arquivo .tds para a fonte de dados.

    2. Localize a linha de propriedade odbc-connect-string-extras='' no arquivo .tds e defina os parâmetros. Por exemplo, para ativar AutoReconnect e UseNativeQuery, você pode alterar a linha para odbc-connect-string-extras='AutoReconnect=1,UseNativeQuery=1'.

    3. Recarregue o arquivo .tds reconectando a conexão.

    O recurso compute é otimizado para usar menos memória heap para coletar grandes resultados, para que possa servir mais linhas por bloco de busca do que default do Simba ODBC. Anexe RowsFetchedPerBlock=100000' ao valor da propriedade odbc-connect-string-extras .

  • .tdc arquivo para todas as fontes de dados:

    1. Se você nunca criou um arquivo .tdc , pode adicionar TableauTdcExample.tdc à pasta Document/My Tableau Repository/Datasources.

    2. Adicione o arquivo às instalações do Tableau Desktop de todos os desenvolvedores, para que funcione quando os painéis forem compartilhados.

Otimize gráficos (planilhas)

Há várias otimizações de gráficos táticos que podem ajudá-lo a melhorar o desempenho de suas planilhas do Tableau.

Para filtros que não mudam com frequência e não devem interagir, use filtros de contexto, que aceleram o tempo de execução. Outra boa regra prática é usar instruções if/else em vez de instruções case/when em sua query.

O Tableau pode inserir filtros na fonte de dados, o que pode acelerar bastante as velocidades query . Consulte Filtragem em várias fontes de dados usando um parâmetro e Filtrar dados em várias fontes de dados para obter mais informações sobre filtros push down de fonte de dados.

É melhor evitar cálculos de tabela, se puder, porque eles precisam verificar o dataset completo. Para obter mais informações sobre cálculos de tabela, consulte Transformar valores com cálculos de tabela.

Otimizar painéis

Aqui estão algumas dicas e exercícios de solução de problemas que você pode aplicar para melhorar o desempenho do seu painel do Tableau.

Uma fonte comum de problemas com painéis do Tableau conectados ao Databricks é o uso de filtros rápidos em painéis individuais que atendem a vários usuários, funções ou segmentos diferentes. Você pode anexar filtros rápidos globais a todos os gráficos no painel. É um ótimo recurso, mas que pode causar problemas rapidamente. Um filtro rápido global em um painel com cinco gráficos faz com que um mínimo de 10 query sejam enviadas ao Databricks. Isso pode aumentar para números maiores à medida que mais filtros são adicionados e pode causar grandes problemas de desempenho, porque o Spark não foi desenvolvido para lidar com muitas query concorrentes começando no mesmo momento exato. Isso se torna mais problemático quando os clusters Databricks ou o SQL warehouse que você está usando não são grandes o suficiente para lidar com o alto volume de query.

Como primeira passo, recomendamos que você use a gravação de desempenho do Tableau para solucionar o que pode estar causando o problema.

Se o baixo desempenho for causado por classificação ou disposição visual, o problema pode ser o número de marcas que o painel está tentando retornar. O Databricks pode retornar um milhão de registros rapidamente, mas o Tableau pode não ser capaz de compute a disposição e classificar os resultados. Se isso for um problema, agregue a query e faça drill nos níveis mais baixo. Você também pode tentar uma máquina maior, pois o Tableau é limitado apenas pelos recursos físicos da máquina em que está sendo executado.

Para obter informações sobre detalhamento no Tableau, consulte detalhar os detalhes.

Em geral, ver muitas marcas granulares costuma ser um padrão analítico insatisfatório, porque não fornece compreensão. O detalhamento de níveis mais altos de agregação faz mais sentido e reduz o número de registros que precisam ser processados e visualizados.

Use ações para otimizar painéis

Para detalhar de grupo a segmento de artigos a fim de obter a mesma análise e informação do painel “oceano fervido”, você pode usar as ações do Tableau . As ações permitem que você clique em uma marca (por exemplo, um estado em um mapa) e seja enviado para outro painel que filtra com base no estado em que você clica. Isso reduz a necessidade de ter muitos filtros em um painel e reduz o número de registros que precisam ser gerados, porque você pode definir uma ação para não gerar registros até obter um predicado para filtrar.

Para obter mais informações, consulte Ações e 6 dicas para tornar seus painéis mais eficientes.

Cache

Armazenar dados em cache é uma boa maneira de melhorar o desempenho de planilhas ou painéis.

Cache no Tableau

O Tableau tem quatro camadas de armazenamento em cache antes de retornar aos dados, estejam esses dados em uma conexão ativa ou uma extração:

  • Blocos: se alguém estiver carregando exatamente o mesmo painel e nada mudar, o Tableau tentará reutilizar os mesmos blocos para os gráficos. Isso é semelhante aos blocos do Google Maps.

  • Modelo: Existem cálculos matemáticos usados para gerar visualizações caso os blocos não possam ser usados. O Tableau Server tenta usar os mesmos modelos.

  • Resumo: Os resultados agregados da query também são armazenados. Este é o terceiro nível de “defesa”. Se uma query retornar Sum(ventas), Count(orders), Sum(Cost), em uma query anterior e uma query futura desejar apenas Sum(ventas), o Tableau obterá esse resultado e o usará.

  • Cache nativo: se a query for exatamente igual a outra, o Tableau usará os mesmos resultados. Este é o último nível de cache. Se isso falhar, o Tableau vai para os dados.

Frequência de armazenamento em cache no Tableau

O Tableau tem configurações administrativas para armazenar em cache com mais ou menos frequência. Se o servidor estiver configurado para refresh com menos frequência, o Tableau manterá os dados no cache por até 12 horas. Se for definido para refresh com mais frequência, o Tableau voltará aos dados a cada refresh de página.

Os clientes que têm o mesmo painel sendo usado novamente – por exemplo, “relatórios de pipeline de segunda-feira de manhã” – devem estar em um servidor configurado para refresh com menos frequência para que todos os painéis usem o mesmo cache.

Aquecimento de cache no Tableau

No Tableau, você pode aquecer o cache definindo uma inscrição para que o painel seja enviado antes de desejar a view do painel. Isso ocorre porque o painel precisa ser renderizado para gerar a imagem para o email de inscrição. Consulte Aquecendo o cache do Tableau Server usando inscrição.

Tableau Desktop: o erro The drivers... are not properly installed é exibido

Problema: quando você tenta conectar o Tableau Desktop ao Databricks, o Tableau exibe uma mensagem de erro na caixa de diálogo de conexão com um link para a página downloads de driver, onde você pode encontrar links de driver e instruções de instalação.

Causa: a instalação do Tableau Desktop não está executando um driver compatível.

Resolução: downloads o driver Databricks ODBC versão 2.6.15 ouacima.

Consulte também: Erro “Os drivers… não estão instalados corretamente” no site do Tableau.