Conectar o Tableau e o Databricks

Este artigo mostra como usar o Partner Connect para se conectar do Databricks ao Tableau Desktop e do Tableau Desktop ou Tableau Cloud ao Databricks. Este artigo também inclui informações sobre Tableau Server no Linux.

Observação

Para configurar o logon do Databricks no Tableau Server, consulte Configurar o logon do Databricks no Tableau Server.

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.

Requisitos para conectar o Tableau e o Databricks

Conecte o Databricks ao Tableau Desktop usando o Partner Connect

O senhor pode usar o Partner Connect para conectar um recurso compute ou SQL warehouse com o 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:

    • Insira tokens para Username e seus access tokens pessoal do Databricks para Password.

Conectar o Tableau Desktop ao Databricks

Siga estas instruções para se conectar do Tableau Desktop a um compute recurso ou SQL warehouse.

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.

Conectar o Tableau Cloud à Databricks

Siga estas instruções para se conectar a um recurso compute ou SQL warehouse a partir de Tableau Cloud.

  • começar uma nova pasta de trabalho

  • Na barra de menus, clique em Data > New fonte de dados.

  • Na página Connect to Data (Conectar aos dados), clique em Connectors (Conectores ) > Databricks.

  • Na página Databricks, insira os valores Server hostname (Nome do host do servidor ) e HTTP Path (Caminho HTTP).

  • Selecione seu método de autenticação e insira as informações solicitadas (se houver).

  • Clique em Entrar.

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 Cloud a partir do Tableau Desktop

Este artigo mostra como publicar uma pasta de trabalho do Tableau Desktop para o Tableau Cloud e mantê-la atualizada quando a fonte de dados for alterada. O senhor precisa de uma pasta de trabalho no Tableau Desktop e um arquivo Tableau Cloud account.

  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 em Tableau Cloud: no Tableau Desktop, clique em Server > Publish fonte de dados > <data-source-name>.

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

  6. Na caixa de diálogo Publish fonte de dados to Tableau Cloud, ao lado de refresh Not Enabled (Atualizar não ativado), clique no link Edit (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 em Tableau Cloud.

  11. Em Tableau Cloud, na caixa de diálogo Publishing Complete, clique em programar e siga as instruções na tela.

  12. Publicar a pasta de trabalho no Tableau Cloud: 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 Cloud, clique em Publicar. A pasta de trabalho é exibida no Tableau Cloud.

Tableau Cloud verifica se há alterações na fonte de dados de acordo com o programa que o senhor 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, o fluxo de trabalho que o senhor executa 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.

Usar o Desktop é uma técnica de solução de problemas muito melhor, pois o Tableau Server tem mais processos a serem considerados quando o senhor soluciona problemas. Se as coisas funcionarem no Tableau Desktop, mas não no Tableau Server, então o senhor pode reduzir 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.

Tableau pode empurrar os filtros para dentro da fonte de dados, o que pode melhorar a velocidade de consulta. 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 fontes de dados.

Tente evitar cálculos de tabela, pois eles examinam todo o site dataset. Para obter mais informações sobre cálculos de tabela, consulte Transformar valores com cálculos de tabela.

Otimizar painéis

Veja a seguir algumas dicas e exercícios de solução de problemas que podem ser aplicados para melhorar o desempenho do seu painel do Tableau.

Com os painéis do Tableau conectados ao Databricks, os filtros rápidos em painéis individuais que atendem a vários usuários, funções ou segmentos diferentes podem ser uma fonte comum de problemas. Você pode anexar filtros rápidos a todos os gráficos no painel. Um filtro rápido em um painel com cinco gráficos faz com que, no mínimo, 10 consultas sejam enviadas à Databricks. Isso pode aumentar para números maiores quando mais filtros são adicionados e pode causar problemas de desempenho porque o site Spark não foi criado para lidar com muitas consultas concorrente que começam no mesmo exato momento. Isso se torna mais problemático quando o site Databricks cluster ou SQL warehouse que o senhor está usando não é grande o suficiente para lidar com o alto volume de consultas.

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

Use as _actions do Tableau para clicar em uma marca (por exemplo, um estado em um mapa) e ser enviado para outro painel que filtra com base no estado em que o usuário clicou. Isso reduz a necessidade de ter vários filtros em um painel e reduz o número de registros que precisam ser gerados. (Você está definindo uma ação para não gerar registros até que ela receba 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:

  • Ladrilhos: 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 atualizar com menos frequência, o site Tableau manterá os dados no cache por até 12 horas. Se estiver definido como "refresh More Often" (atualizar com mais frequência), o site Tableau voltará aos dados em cada página refresh.

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

Em Tableau, o senhor pode aquecer o cache definindo uma inscrição para que o painel seja enviado antes de desejar a visualização do painel. Isso ocorre porque o painel precisa ser renderizado para gerar a imagem para a inscrição email. Consulte Warming the Tableau Server Cache Using 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.

Restrições de chave primária/estrangeira

Para propagar as restrições primárias key (PK) e estrangeiras key (FK) de Databricks para Tableau, o senhor deve entender os recursos e as limitações de ambas as plataformas em relação às restrições.

Entendendo as restrições do Databricks

Databricks suporta restrições primárias e estrangeiras key a partir de Databricks Runtime 15.2. Essas restrições são informativas e não são impostas pelo site default, o que significa que elas não impedem violações de integridade de dados, mas podem ser usadas para otimizar consultas e fornecer metadados sobre relacionamentos de dados. Consulte Declarar chave primária e relações de chave estrangeira.

Entender como o Tableau usa restrições para criar relacionamentos de tabela

Tableau não impõe diretamente restrições primárias e externas key mas usa relacionamentos para modelar conexões de dados. Para trabalhar com restrições no Tableau, o senhor deve entender que o modelo de dados do Tableau oferece dois níveis de modelagem: uma camada lógica e uma camada física. Consulte Modelo de dados do Tableau. As implicações desse modelo de dados de dois níveis em Databricks restrições reconhecidas como relacionamentos em Tableau são discutidas abaixo.

Como conectar o Databricks ao Tableau

Quando o senhor conecta Databricks a Tableau, Tableau tenta criar relacionamentos na camada física entre as tabelas com base nas restrições existentes em key e nos campos correspondentes. Tableau tenta automaticamente detectar e criar relacionamentos na camada física com base nas restrições primárias e externas key definidas em Databricks. Se nenhuma restrição do key for definida, o Tableau usará os nomes de coluna correspondentes para gerar automaticamente a união. Na camada lógica, somente correspondências de nomes de coluna única são usadas para determinar um relacionamento. Na camada física, essa correspondência de nome de coluna detecta relacionamentos simples (coluna única) e compostos (várias colunas) key.

Se o site Tableau não puder determinar os campos correspondentes, o senhor precisará especificar manualmente a relação join entre as duas tabelas na camada física, fornecendo as colunas, a condição e o tipo de restrição. Para mudar da camada lógica na interface do usuário para a camada física, clique duas vezes na tabela na camada lógica.