Conectar o Tableau e o Databricks
Tableau é uma plataforma de Business Intelligence e visualização de dados que ajuda os usuários a conectar, analisar e compartilhar seus dados por meio da criação de painéis e relatórios interativos, possibilitando a tomada de decisões no site data-driven. 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.
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, o senhor pode fornecer uma análise interativa avançada, trazendo as contribuições do data scientists e do engenheiro de dados para o seu analista de negócios, dimensionando para um conjunto de dados massivo.
Explorar no Tableau Cloud da Databricks
Ao usar Databricks como fonte de dados com Tableau Cloud, o senhor pode criar fontes de dados Tableau a partir de tabelas ou esquemas diretamente da interface do usuário Databricks.
Requisitos
- Seus dados devem estar em Unity Catalog e seu compute (clustering) deve estar habilitado para Unity Catalog. Hive metastore não é suportado no momento.
Explore as tabelas da Databricks no Tableau Cloud
- Faça login em seu Databricks workspace e clique em
Catalog na barra lateral para abrir o Catalog Explorer.
- Selecione um recurso compute no painel do catálogo no canto superior esquerdo.
- Abra um catálogo e selecione o esquema ou a tabela que você deseja explorar. Não selecione em um site Hive metastore ou no catálogo de amostras.
- No canto superior direito, clique em Use with BI tools (Usar com ferramentas de BI ) para um esquema ou Open in a dashboard (Abrir em um painel) para uma tabela.
- Selecione Explore in Tableau Cloud no menu dropdown.
- Verifique se o cálculo e o esquema ou a tabela selecionados estão corretos e, em seguida, clique em Explore (Explorar) em Tableau Cloud .
- Um novo tab será aberto e solicitará que o senhor faça login no seu Tableau Cloud account.
- Depois de fazer login no Tableau, o senhor será solicitado a fazer login novamente na Databricks.
- Depois de fazer login na Databricks, o senhor pode começar a criar um painel do Tableau no editor de pastas de trabalho.
recurso e notas
- Você pode explorar uma tabela ou um esquema. Ao explorar um esquema, o senhor deve selecionar uma tabela no painel Tableau fonte de dados antes de começar a criar um painel.
- A Databricks impõe o OAuth como o modo de autenticação ao publicar no Tableau Cloud.
- A fonte de dados publicada está no modo de rascunho e não é salva em nenhum lugar. O senhor deve salvá-lo no Tableau Cloud para torná-lo acessível a outras pessoas.
Requisitos gerais para conectar o Tableau e o Databricks
Informações sobre a conexão
Os detalhes da conexão para um recurso compute ou SQL warehouse, especificamente os valores Server Hostname e HTTP Path .
Conectar dados gerenciados por Databricks Unity Catalog a Tableau Desktop
- Tableau Desktop 2021.4 ou acima. Faça o download e instale o Tableau Desktop em seu computador.
- Databricks ODBC driver versão 2.6.19 ou acima. Instale o driver usando o arquivo de instalação de downloads em sua área de trabalho. Siga as instruções fornecidas pelo Tableau para configurar a conexão com o Databricks. Consulte Tableau e ODBC para obter mais detalhes sobre como o Tableau Desktop funciona com drivers ODBC.
Conecte os dados gerenciados pelo legado Databricks Hive metastore ao Tableau Desktop
- 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 ativado como um aplicativo OAuth em seu account. Tableau Desktop e Tableau Cloud são ativados por default. Para habilitar o Tableau Server, consulte Configurar o logon do Databricks a partir do Tableau Server.
Por default, OAuth tokens para Tableau expiram após 90 dias. Para modificar o tempo de vida dos tokens, consulte Substituir parceiros OAuth tokens lifetime policy.
-
A Databricks tokens de acesso pessoal.
A autenticação básica usando um nome de usuário e senha da Databricks chegou ao fim da vida útil em 10 de julho de 2024. Consulte End of life para Databricks-gerenciar senhas.
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 os sites Databricks account, workspace e o usuário conectado atendam aos requisitos do site Partner Connect.
-
Na barra lateral, clique em
marketplace .
-
Em Partner Connect integrations , clique em view all .
-
Clique no bloco do Tableau .
-
Na caixa de diálogo Connect to parceiros , para computar , escolha o nome do recurso Databricks compute que o senhor deseja conectar.
-
Escolha Fazer download do arquivo de conexão .
-
Abra o arquivo de conexão de downloads, que começa em Tableau Desktop.
-
No Tableau Desktop, insira suas credenciais de autenticação e clique em Entrar :
- Para usar os tokens de acesso pessoal do Databricks, insira tokens para o nome de usuário e seus tokens de acesso pessoal para a senha .
- OAuth/Microsoft Entra ID . Para OAuth endpoint Digite
https://{<server-hostname>}/oidc
, em que<server-hostname>
é o Server Hostname do seu recurso compute ou SQL warehouse. Uma janela do navegador é aberta e solicita que você faça login no seu IdP. - Nome de usuário/senha : Não aplicável. Consulte as opções de autenticação.
Conectar o Tableau Desktop ao Databricks
Siga estas instruções para se conectar do Tableau Desktop a um compute recurso ou SQL warehouse.
Para se conectar mais rapidamente com o Tableau Desktop, use o Partner Connect.
-
Tableau Desktop.
-
Clique em Arquivo > Novo .
-
Em Data tab, clique em Connect to Data (Conectar aos dados ).
-
Na lista de conectores, clique em Databricks .
-
Insira o Nome de host do servidor e o Caminho HTTP .
-
Em Autenticação , escolha seu método de autenticação, insira suas credenciais de autenticação e clique em Entrar .
-
Para usar os tokens de acesso pessoal do Databricks, selecione Personal Access tokens e insira seus tokens de acesso pessoal para a senha .
-
OAuth/Microsoft Entra ID . Para OAuth endpoint Digite
https://{<server-hostname>}/oidc
, em que<server-hostname>
é o Server Hostname do seu recurso compute ou SQL warehouse. Uma janela do navegador é aberta e solicita que você faça login no seu IdP. -
Nome de usuário/senha : Não aplicável. Consulte as opções de autenticação.
Se Unity Catalog estiver ativado para seu workspace, defina adicionalmente o catálogo default. Em Advanced tab, em Connection properties (Propriedades de conexão ), adicione
Catalog=<catalog-name>
. Para alterar o catálogo default, no campo Initial SQL tab, digiteUSE CATALOG <catalog-name>
. -
Conectar o Tableau Cloud ao 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 e HTTP Path .
- 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
O Tableau Server no Linux recomenda a arquitetura de processamento de 64 bits.
Publicar e refresh uma pasta de trabalho em 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 o senhor deseja publicar exibida, clique em Data >
<data-source-name>
> extração de dados . - Na caixa de diálogo Extração de dados , clique em Extract (Extrair ).
- Navegue até o local em sua máquina local onde deseja salvar a extração de dados e clique em Save (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 Authentication (Autenticação ), altere Refresh not enabled (Atualizar não ativado) para Allow refresh access (Permitir acesso ).
- Clique em qualquer lugar fora desse 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 a programação que o senhor definiu e atualiza a pasta de trabalho publicada se forem detectadas alterações.
Para obter mais informações, veja o seguinte no site Tableau:
- Publicar uma fonte de dados
- passos abrangentes para publicar uma pasta de trabalho
- Programar a atualização da extração ao publicar uma pasta de trabalho
Melhores práticas e solução de problemas
As duas ações fundamentais para otimizar as consultas do Tableau são:
- Reduza o número de registros consultados e visualizados em um único gráfico ou painel.
- Reduzir o número de consultas enviadas pelo Tableau em um único gráfico ou painel.
Decidir qual tentar primeiro depende do seu painel. Se o senhor tiver vários gráficos diferentes para usuários individuais no mesmo painel, é provável que o Tableau esteja enviando muitas consultas ao Databricks. Se o senhor tiver apenas alguns gráficos, mas eles demorarem muito para carregar, provavelmente há muitos registros sendo retornados pelo Databricks para serem carregados de forma eficaz.
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 o registro de desempenho para depurar qualquer problema do Tableau
Por exemplo, se o problema for a execução da consulta, o senhor sabe que isso tem a ver com o processo do mecanismo de dados ou com a fonte de dados que está consultando. Se a disposição visual estiver funcionando lentamente, o senhor sabe 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 informações detalhadas tutorial sobre o gravador de desempenho, consulte Criar uma gravação de desempenho no site.
desempenho em 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
Em default, os parâmetros do URL de conexão substituem os do DSN do Simba ODBC. Há duas maneiras de personalizar as configurações de ODBC do Tableau:
-
.tds
para uma única fonte de dados:- Siga as instruções em Save fonte de dados para exportar o arquivo
.tds
para a fonte de dados. - Encontre 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 resultados grandes, de modo que pode servir mais linhas por bloco de busca do que o Simba ODBC's default. Anexe
RowsFetchedPerBlock=100000'
ao valor da propriedadeodbc-connect-string-extras
. - Siga as instruções em Save fonte de dados para exportar o arquivo
-
.tdc
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 ele funcione quando os painéis forem compartilhados.
- Se você nunca criou um arquivo
Otimize gráficos (planilhas)
Há uma série de otimizações táticas de gráficos que podem ajudá-lo a melhorar o desempenho das planilhas do Tableau.
Para filtros que não mudam com frequência e não devem ser usados para interação, use filtros de contexto, que aceleram o tempo de execução.
Outra boa regra é usar as declarações if/else
em vez das declarações case/when
em suas consultas.
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.
Otimize 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 Databricks clustering 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 como fazer drill down Tableau em, consulte Drill down into the details.
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 aumentar o desempenho de seus painéis.
Armazenamento em cache
O armazenamento de dados em cache é uma boa maneira de melhorar o desempenho de planilhas ou painéis.
Armazenamento em cache no Tableau
O Tableau tem quatro camadas de armazenamento em cache antes de voltar aos dados, estejam eles em uma conexão em tempo real ou em 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 das consultas também são armazenados. Este é o terceiro nível de “defesa”. Se uma consulta retornar Sum(ventas), Count(orders), Sum(Cost), em uma consulta anterior e uma consulta futura desejar apenas Sum(ventas), o site Tableau pegará esse resultado e o utilizará.
- 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 o senhor 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 de download do driver, onde é possível encontrar links de driver e instruções de instalação.
Causa : Sua 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.
Veja também : Erro "Os drivers... não estão instalados corretamente" no site do Tableau.
Restrições primárias/externas key
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 relações primárias key e estrangeiras key.
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.