Snowflake

Este artigo descreve como conectar o Tableau a um data warehouse do Snowflake e configurar a fonte de dados.

Antes de começar

Antes de começar, colete estas informações de conexão:

  • Nome do servidor ao qual deseja se conectar
  • Método de autenticação:
    • OAuth: use este método se quiser habilitar a federação de um IDP.
    • SAML IDP: use este método se quiser incorporar as credenciais do IDP na conexão.
    • Nome de usuário e senha: use este método se quiser armazenar credenciais de usuário no Snowflake.
  • As credenciais de logon dependem do método de autenticação escolhido
  • (Opcional) Instrução SQL inicial para ser executada sempre que o Tableau se conecta

Driver necessário

Este conector exige um driver para se comunicar com o banco de dados. Você talvez já tenha esse driver instalado no computador. Se o driver não estiver instalado no computador, o Tableau exibirá uma mensagem na caixa de diálogo de conexão com um link para a página Download do driver(O link abre em nova janela), na qual é possível encontrar links para o driver e instruções de instalação.

Observação: para suportar o uso do OAuth com Snowflake, você deve instalar o driver de ODBC mais recente do Snowflake (a versão 2.25.4 é a atual).

Fazer a conexão e configurar a fonte de dados

Depois de selecionar Snowflake como conexão, um menu POPUP é exibido com 3 guias. Use a guia Geral para autenticação. Selecione SQL inicial se quiser executar um comando de SQL no início de cada conexão. Para obter mais informações, consulte Executar o SQL inicial. Você pode usar a guia Avançado para adicionar conexões de clientes com parâmetros.

Conectar o Tableau a seus dados

  1. Inicie o Tableau e, em Conectar, selecione Snowflake.
  2. Insira o nome do servidor ao qual você deseja se conectar.
  3. Selecione o método de Autenticação: Nome de usuário e senha, Nome de usuário e senha do Okta ou Entrar usando o OAuth.
  4. Selecione um dos métodos de autenticação e conclua as etapas de login.
    Nome de usuário e senha do Okta:
    1. Insira o Nome de usuário e Senha,
    2. No campo Okta, insira a URL do servidor de servidor Okta.
    Entrar usando OAuth
    1. (Opcional) Selecione SQL inicial se quiser executar um comando de SQL no início de cada conexão. Para obter mais informações, consulte Executar o SQL inicial.
    2. Selecione Fazer logon.
    3. Na página da Web que é aberta, entre no Snowflake inserindo seu Nome de usuário e Senha e selecione Logon. Ou selecione Logon único [SSO] se o Snowflake estiver configurado para suportar o SSO.
    4. Clique em OK para confirmar a autorização para acessar seus dados do Snowflake.
    5. Feche a janela do navegador e o Tableau.
    6. Vá para a próxima seção "Configurar a fonte de dados".
  5. Selecione Fazer logon.
  6. Se o Tableau não conseguir fazer a conexão, verifique se as suas credenciais estão corretas. Se ainda assim não conseguir se conectar, seu computador está enfrentando problemas para localizar o servidor. Entre em contato com o administrador de banco de dados ou de rede.

Tempo limite do token de acesso: sempre validar o TDC do token de acesso

O token de acesso Snowflake expira após 10 minutos. Em determinados processos de atualização de extração, novas conexões são estabelecidas posteriormente na tarefa, quando o token de acesso expirar. Para resolver esse problema, adicionamos um novo recurso, que é habilitado por padrão a partir do Tableau 2024.2. Para ativar esse recurso em versões mais antigas, você pode usar o TDC a seguir.

<connection-customization class='snowflake' enabled='true' version='10.0'>
    <vendor name='snowflake' />
    <driver name='snowflake' />
    <customizations>
        <customization name='CAP_OAUTH_VALIDATE_ALWAYS' value='yes'/>
    </customizations>
</connection-customization>

Se estiver usando o Tableau Cloud, você poderá publicar no Tableau Desktop com o TDC instalado na pasta de fontes de dados do repositório do Tableau. Isso inserirá o TDC na pasta de trabalho ou fonte de dados na publicação.

O TDC inserido é sempre aplicado, independentemente do status do sinalizador habilitado, desde que não haja outro TDC instalado no lado do servidor. E nunca há um TDC instalado no Tableau Cloud (apenas inserido).

Observação: os TDCs inseridos não são compatíveis com fluxos.

Personalizar a conexão usando parâmetros de driver

Você pode modificar a conexão feita com o conector Snowflake anexando parâmetros do driver à cadeia de conexão na guia Avançado.

Observação: não é possível alterar os parâmetros do driver gerados pelo Tableau; você pode anexar somente parâmetros.

Por exemplo, esta sintaxe especifica um servidor proxy a ser usado quando os valores no_proxy não são atendidos e nomes de host têm permissão para ignorar o servidor proxy:

Proxy=http://proxyserver.company:80;no_proxy=.trustedserver.com;

Para outro exemplo de parâmetros personalizados do driver, consulte Usar um proxy para o Snowflake.

 

Observação: se desejar personalização sem incorporá-lo na fonte de dados, você pode configurar parâmetros no registro do Windows (apenas os parâmetros marcados como "Parâmetros de configuração" estão disponíveis). Para obter detalhes sobre os parâmetros de driver, consulte Parâmetros de configuração e conexão do ODBC no site da Snowflake.

Configurar a fontes de dados

Na página da fonte de dados, faça o seguinte:

  1. (Opcional) Selecione o nome da fonte de dados padrão na parte superior da página e, em seguida, insira um nome de fonte de dados exclusivo para uso no Tableau. Por exemplo, use uma convenção de nomeação de fonte de dados que ajude os outros usuários da fonte de dados a deduzir a qual fonte de dados devem se conectar.

  2. Na lista suspensa Warehouse, selecione o warehouse ou use a caixa de texto para pesquisá-lo pelo nome.

    Observação: se você deixar isso em branco e não selecionar um warehouse, o Tableau usará o warehouse virtual padrão do Snowflake.

    Para obter mais informações, consulte Warehouses virtuais padrão no Snowflake.

  3. Na lista suspensa Banco de dados, selecione um banco de dados ou use a caixa de texto para pesquisá-lo pelo nome.
  4. Na lista suspensa Esquema, selecione um esquema ou use a caixa de texto para procurar um pelo nome.
  5. Em Tabela, selecione uma tabela ou use a caixa de texto para procurar uma tabela pelo nome.
  6. Arraste uma tabela para a tela e selecione a guia da planilha para iniciar sua análise. Use SQL personalizado para se conectar a uma consulta específica em vez de à fonte de dados inteira. Para obter mais informações, consulte Conectar a uma consulta de SQL personalizado.

Fazer logon em um Mac

Se você usa o Tableau Desktop em um Mac, quando inserir o nome de servidor com o qual se conectar, use um nome de domínio totalmente qualificado, como mydb.test.example.lan, em vez de um nome de domínio relativo, como mydb ou mydb.test.

Como alternativa, é possível adicionar o domínio à lista de Domínios de Pesquisa no computador Mac para que, quando você se conectar, seja necessário fornecer apenas um nome de servidor. Para atualizar a lista de Domínios de Pesquisa, vá para Preferências do Sistema > Rede > Avançado e depois abra a guia DNS.

Warehouses virtuais padrão no Snowflake

Quando você cria uma fonte de dados do Snowflake, cria um warehouse do Snowflake (para recursos computacionais) e bancos de dados do Snowflake (para recursos de dados). Tanto warehouse quanto bancos de dados exigem permissões para acessá-los. Você pode usar diferentes warehouses para acessar o mesmo banco de dados, dependendo do poder de computação que você precisa, assumindo que você tem permissões para cada warehouse e banco de dados.

Ao criar uma fonte de dados, você tem a opção de escolher um warehouse em uma lista suspensa. Se você deixar em branco e não selecionar um warehouse, o Tableau usará seu warehouse virtual do Snowflake padrão. Se você publicar posteriormente essa fonte de dados ou livro de trabalho, quando um usuário se conectar, o Tableau usará o warehouse virtual padrão do Snowflake dessa pessoa.

Cada usuário deve receber um warehouse padrão para que o Tableau possa usar esse como padrão para abrir uma pasta de trabalho em uma fonte de dados do Snowflake.

Configurar suporte do servidor Snowflake para OAuth

Para obter informações sobre como configurar o OAuth para conexões entre o Tableau e o Snowflake, consulte Configurar OAuth para conexões do Snowflake(O link abre em nova janela).

Usar um proxy para o Snowflake

Conecte-se a partir do Tableau por meio de um proxy ao Snowflake. Se você estiver usando o Tableau versão 2019.4 ou posterior, poderá configurá-lo com a caixa de diálogo do conector digitando os parâmetros necessários na guia Avançado.

Por exemplo:

proxy=http://proxyserver.company:80

Para obter informações sobre os parâmetros que você deve usar, consulte a documentação do Snowflake(O link abre em nova janela).

Observação: o Tableau não usa um DSN para se conectar ao Snowflake, então você pode ignorar as instruções na documentação do Snowflake sobre o uso de um DSN.

Se você estiver usando a versão do Tableau anterior à versão 2019.4, poderá configurá-lo ao inserir os parâmetros em um arquivo TDC usando odbc-extras.

Por exemplo:

Copiar
<connection-customization class='snowflake' enabled='true' version='19.1'>
        <vendor name='snowflake' />
            <driver name='snowflake' />
                <customizations>
                <customization name='odbc-connect-string-extras' value='proxy=http://proxyserver.company:80' />
                </customizations></connection-customization>

Para obter mais informações, consulte Personalizar a cadeia de caracteres de conexão de um Conector nativo(O link abre em nova janela).

Solução de problemas

Desempenho

Use as informações a seguir para ajudar a corrigir quaisquer problemas de desempenho que você enfrentar ao usar o Tableau com Snowflake.

Tamanho de busca

Ao usar campos VARCHAR ou VARBINARY ilimitados, o driver retornará o tamanho do campo como 16 M. Isso faz com que o Tableau use um tamanho de busca pequeno para permanecer dentro dos limites de memória, o que resulta em velocidade de consulta lenta. Há algumas maneiras de resolver isso.

Alterações de esquema

Se você adicionar um tamanho à definição da coluna, como VARCHAR(256), isso permitirá que o Tableau calcule o tamanho de busca ideal.

Personalizações TDC

  • Você pode usar os parâmetros do driver default_varchar_size ou default_binary_size Você também pode (https://docs.snowflake.com/en/developer-guide/odbc/od

bc-parameters) definir um tamanho máximo de campo para campos ilimitados.

  • Você pode usar a interface de usuário avançada ou um TDC.

  • Você também precisará definir um recurso adicional CAP_ODBC_FETCH_BUFFERS_RESIZABLE.

Observação: essa solução não funcionará no Tableau Cloud, a menos que você esteja usando o Tableau Bridge.

  • Se estiver usando o Tableau Bridge, você poderá instalar o TDC no host da ponte para que ele seja aplicado a todas as conexões que passam por esse host. Veja abaixo os exemplos.

Caixa de diálogo pop-up de parâmetros

Use este TDC se você planeja personalizar o tamanho do campo para cada fonte de dados, usando a interface do usuário anterior.

Copiar
<connection-customization class='snowflake' enabled='true' version='10.0'>
    <vendor name='snowflake' />
    <driver name='snowflake' />
    <customizations>
        <customization name='CAP_ODBC_FETCH_BUFFERS_RESIZABLE' value='yes'/>
    </customizations>
</connection-customization>

Use este TDC para aplicar as personalizações a todas as fontes de dados.

Copiar
<connection-customization class='snowflake' enabled='true' version='10.0'>
<vendor name='snowflake' />
<driver name='snowflake' />
<customizations>
<customization name='CAP_ODBC_FETCH_BUFFERS_RESIZABLE' value='yes'/>
<customization name='odbc-connect-string-extras' value='default_varchar_size=512;default_binary_size=512'/>
</customizations>
</connection-customization>

Perguntas frequentes

Aqui estão alguns problemas comuns e as etapas de resolução.

Eu tenho um erro "Este campo XXX não existe" o que eu faço?

Este erro aparece quando você estiver usando um campo de cálculo, adicionando-o à planilha e substituindo a fonte de dados pelos dados do Snowflake (CustomSQL).

Use a função Substituir referências de campo para resolver o erro. Para obter informações adicionais sobre a substituição de referências de campo, consulte Substituir referências de campo.

 

Consulte também

Agradecemos seu feedback!Seu feedback foi enviado. Obrigado!