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
Os detalhes da conexão para um recurso compute ou SQL warehouse, especificamente o nome do host do servidor e os valores do caminho HTTP.
Tableau Desktop 2019.3 ou acima.
Databricks ODBC Driver 2.6.15 ou acima.
Um access tokenpessoal do Databricks.
Observação
Como prática recomendada de segurança, ao se autenticar com ferramentas, sistemas, scripts e aplicativos automatizados, o site Databricks recomenda que o senhor use o access tokens pessoal pertencente à entidade de serviço em vez do workspace de usuários. Para criar o site tokens para uma entidade de serviço, consulte gerenciar tokens para uma entidade de serviço.
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.
Certifique-se de que sua account Databricks, workspace e o usuário conectado atendam aos requisitos para Partner Connect.
Na barra lateral, clique em parceiros Conectar.
Clique no bloco do Tableau .
Na caixa de diálogo Conectar-se a parceiros , para compute, escolha o nome do recurso compute do Databricks que você deseja conectar.
Escolha o arquivo de conexãodownloads .
Abra o arquivo de conexão downloads , que começará o Tableau Desktop.
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.
começar Tableau Desktop.
Clique em Arquivo > Novo.
Na tab Dados , clique em Conectar aos dados.
Na lista de conectores, clique em Databricks.
Digite o hostnamedo servidor e o caminho HTTP.
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.
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.Na caixa de diálogo de transmissão de dados , clique em Extrair.
Navegue até um local em sua máquina local onde deseja salvar a herança de dados e clique em Salvar.
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>
.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.
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 ).
Na caixa suspensa exibida, para Autenticação, altere refresh não habilitada para Permitir acesso refresh .
Clique em qualquer lugar fora deste submenu para ocultá-lo.
Selecione Atualizar pasta de trabalho para usar a fonte de dados publicada.
Clique em Publicar. A fonte de dados é exibida em Tableau Cloud.
Em Tableau Cloud, na caixa de diálogo Publishing Complete, clique em programar e siga as instruções na tela.
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.
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.
Tableau A gravação de desempenho, disponível tanto no Tableau Desktop quanto no Tableau Server, pode ajudá-lo a identificar gargalos de desempenho, identificando processos que causam latência quando o senhor executa 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 o registro de desempenho indicar que a latência está na consulta em execução, é provável que o Databricks leve muito tempo para retornar os resultados ou que a sobreposição ODBC/Connector processe os dados em SQL para VizQL. Quando isso ocorre, o senhor deve analisar o que está retornando e tentar alterar o padrão analítico para ter um painel por grupo, segmento ou artigos, em vez de tentar amontoar tudo em um único painel e depender de 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. Databricks pode retornar um milhão de registros rapidamente, mas o site Tableau pode não ser capaz de compute a disposição e classificar os resultados. Se isso for um problema, agregue a consulta e analise os níveis mais baixos. O senhor também pode tentar usar uma máquina maior, pois o Tableau é limitado apenas pelo recurso físico 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 porque 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:Siga as instruções em Salvar fontes de dados para exportar o arquivo
.tds
para a fonte de dados.Localize a linha de propriedade
odbc-connect-string-extras=''
no arquivo.tds
e defina os parâmetros. Por exemplo, para ativarAutoReconnect
eUseNativeQuery
, você pode alterar a linha paraodbc-connect-string-extras='AutoReconnect=1,UseNativeQuery=1'
.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 propriedadeodbc-connect-string-extras
..tdc
arquivo para todas as fontes de dados:Se você nunca criou um arquivo
.tdc
, pode adicionar TableauTdcExample.tdc à pastaDocument/My Tableau Repository/Datasources
.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. Para obter mais informações sobre filtros push down de fontes de dados, consulte Filtragem em várias fontes de dados usando um parâmetro e Filtrar dados em várias 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. Databricks pode retornar um milhão de registros rapidamente, mas o site Tableau pode não ser capaz de compute a disposição e classificar os resultados. Se isso for um problema, agregue a consulta e analise os níveis mais baixos. O senhor também pode tentar usar uma máquina maior, pois o Tableau é limitado apenas pelo recurso físico da máquina em que está sendo executado.
Para obter informações sobre detalhamento no Tableau, consulte detalhar os detalhes.
Se o senhor observar muitas marcas granulares, esse é geralmente um padrão analítico ruim porque não oferece entendimento. Analisar níveis mais altos de agregação faz mais sentido e reduz o número de registros que devem 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 a outro painel que filtra com base no estado clicado. O uso de _actions reduz a necessidade de vários filtros em um painel e o número de registros que devem 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 carregar 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: se o cache de blocos não puder ser usado, o cache do modelo de cálculos matemáticos será usado para gerar visualizações. 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 consulta for a mesma que outra, o Tableau usará os mesmos resultados. Esse é o último nível de armazenamento em cache. Se isso falhar, o Tableau vai até 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 o servidor estiver configurado para atualizar com mais frequência, o site Tableau retornará aos dados em cada página refresh.
Os clientes que usam o mesmo dashboard repetidamente, por exemplo, "Monday morning pipeline reports", devem estar em um servidor configurado para atualizar com menos frequência para que todos os dashboards usem o mesmo cache.
Aquecimento de cache no Tableau
Em Tableau, o senhor pode aquecer o cache configurando uma inscrição para que o painel seja enviado antes de desejar a visualização do painel. (O painel deve ser renderizado para gerar a imagem da inscrição email ). Consulte Warming the Tableau Server Cache Using inscrição.
Tableau Desktop: Erro The drivers... are not properly installed
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 estrangeiras key. Em vez disso, o Tableau usa relações para modelar as 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 sobre as restrições do Databricks reconhecidas como relações no 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 deverá 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.