Snowflake

I den här artikeln beskriver vi hur du ansluter Tableau till ett Snowflake-datalager och konfigurerar datakällan.

Innan du börjar

Innan du börjar ska du samla in följande anslutningsinformation:

  • Namn på den server som du vill ansluta till
  • Autentiseringsmetod:
    • OAuth: Använd denna metod om du vill aktivera federering från en IDP.
    • SAML IDP: Använd denna metod om du vill bädda in IDP-inloggningsuppgifterna i anslutningen.
    • Användarnamn och lösenord: Använd denna metod om du vill lagra inloggningsuppgifter för användare i Snowflake.
  • Inloggningsuppgifterna varierar beroende på vilken autentiseringsmetod som du väljer
  • (Valfritt) Inledande SQL-sats körs varje gång Tableau ansluter

Drivrutin krävs

Den här kopplingen kräver en drivrutin för att kommunicera med databasen. Du kanske redan har den nödvändiga drivrutinen installerad på datorn. Om drivrutinen inte är installerad på datorn visar Tableau ett meddelande i dialogrutan Anslutning med en länk till nedladdningssidan med drivrutinen(Länken öppnas i ett nytt fönster) där du kan hitta länkar till drivrutiner och installationsinstruktioner.

Obs! För att stödja användning av OAuth med Snowflake måste du installera den senaste ODBC-drivrutinen från Snowflake (för närvarande version 2.25.4).

Skapa anslutningen och konfigurera datakällan

När du har valt Snowflake som anslutning visas en POPUP-meny med tre flikar. Använd fliken Allmänt för autentisering. Du kan även använda Initial SQL för att köra ett SQL-kommando i början av varje anslutning. Mer information finns i Köra inledande SQL. Du kan använda fliken Avancerat för att lägga till kundkopplingar med parametrar.

Ansluta Tableau till dina data

  1. Starta Tableau och välj Snowflake under Anslut.
  2. Ange namnet på den server som du vill ansluta till.
  3. Välj Autentiseringsmetod: Användarnamn och lösenord, Användarnamn och lösenord för Okta eller Logga in med OAuth.
  4. Välj en av autentiseringsmetoderna och slutför inloggningen.
    Användarnamn och lösenord för Okta:
    1. Ange användarnamnet och lösenordet.
    2. I fältet Okta ska du ange URL:en för Okta-servern.
    Logga in med OAuth
    1. (Valfritt) Välj Initial SQL för att köra ett SQL-kommando i början av varje anslutning. Mer information finns i Köra inledande SQL.
    2. Välj Logga in.
    3. På webbsidan som öppnas loggar du in på Snowflake genom att ange ditt användarnamn och lösenord och väljer Logga in. Välj i annat fall Enkel inloggning om Snowflake är konfigurerad för att stödja SSO.
    4. Klicka på OK för att bekräfta auktoriseringen för åtkomst till dina Snowflake-data.
    5. Stäng webbläsaren och Tableau.
    6. Gå vidare till nästa avsnitt, ”Konfigurera datakällan”.
  5. Välj Logga in.
  6. Om Tableau inte kan upprätta anslutningen, verifierar du att du har rätt inloggningsuppgifter. Om du fortfarande inte kan ansluta, har datorn problem med att hitta servern. Kontakta nätverksadministratören eller databasadministratören.

Tidsgräns för åtkomsttoken: Validera alltid åtkomsttoken med TDC

Snowflake-åtkomsttoken upphör att gälla efter 10 minuter. I vissa extraktuppdateringsprocesser etableras nya anslutningar senare i jobbet, när åtkomsttoken har upphört att gälla. För att lösa det här problemet har vi lagt till en ny funktion, som är aktiverad som standard från och med Tableau 2024.2. Du kan använda följande TDC för att aktivera den här funktionen i äldre versioner.

<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>

Om du använder Tableau Cloud kan du publicera från Tableau Desktop med TDC installerad i mappen för Tableau-lagringsplatsdatakällor. Det kommer att bädda in TDC i arbetsboken eller datakällan vid publicering.

Den inbäddade TDC-filen tillämpas alltid, oavsett den aktiverade flaggans status, så länge det inte finns en annan TDC-fil installerad på serversidan. Och det förekommer aldrig en installerad TDC-fil i Tableau Cloud (endast inbäddad).

Obs! Inbäddade TDC-filer stöds inte med flöden.

Anpassa anslutningen med hjälp av drivrutinsparametrar

Du kan ändra anslutningen till Snowflake-kopplingen genom att lägga till drivrutinsparametrar i anslutningssträngen på fliken Avancerat.

Obs! Det går inte att ändra drivrutinsparametrar som genereras av Tableau. Det går endast att lägga till parametrar.

Den här syntaxen anger till exempel en proxyserver som ska användas när no_proxy-värdena inte uppfylls och vilka värdnamn som är tillåtna att kringgå proxyservern:

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

Ytterligare exempel på anpassade drivrutinsparametrar finns i Använda en proxy för Snowflake.

 

Obs! Om du vill ha anpassning utan att bädda in den i datakällan kan du konfigurera parametrar i registret i Windows (endast parametrar som är markerade som ”Konfigurationsparametrar” är tillgängliga). Mer information om förarparametrar finns i ODBC konfigurations- och anslutningsparametrar på Snowflake-webbplatsen.

Konfigurera datakällan

På sidan Datakälla gör du följande:

  1. (Valfritt) Välj standardnamnet för datakällan längst upp på sidan och ange sedan ett unikt namn för datakällan, som ska användas i Tableau. Till exempel kan du använda en konvention för namngivning av datakälla som gör det lättare för andra användare av datakällan att räkna ut vilken datakälla de ska ansluta till.

  2. Välj ett lager i listrutan Lager eller använd textrutan för att söka efter ett lager med dess namn.

    Obs! Om du lämnar rutan tom och inte väljer ett lager använder Tableau ditt virtuella standardlager i Snowflake.

    Mer information finns i Virtuella standardlager i Snowflake.

  3. Välj en databas i listrutan Databas eller använd textrutan för att söka efter en databas med dess namn.
  4. Välj ett schema i listrutan Schema eller använd textrutan för att söka efter ett schema med dess namn.
  5. Under Tabell väljer du en tabell eller så använder du textrutan för att söka efter ett tabellnamn.
  6. Dra en tabell till arbetsytan och välj sedan bladflik för att starta analysen. Använd anpassad SQL för att ansluta till en specifik fråga i stället för till hela datakällan. Mer information finns i Ansluta till en anpassad SQL-fråga.

Logga in på en Mac

Om du använder Tableau Desktop på en Mac och anger servernamnet för att ansluta ska du använda ett fullständigt domännamn, såsom mydb.test.ourdomain.lan, istället för ett relativt domännamn, såsom mydb eller mydb.test.

Alternativt kan du lägga till domänen i listan över sökdomäner för Mac-datorn vilket låter dig endast ange servernamnet när du ansluter. Gå till Systeminställningar > Nätverk > Avancerat och öppna sedan fliken DNS för att uppdatera listan över sökdomäner.

Virtuella standardlager i Snowflake

När du skapar en Snowflake-datakälla skapas även ett Snowflake-lager (för beräkningsresurser) och Snowflake-databaser (för dataresurser). Både lager och databaser kräver särskilda åtkomstbehörigheter. Du kan använda olika lager för åtkomst till samma databas, beroende på vilken beräkningskapacitet du behöver, förutsatt att du har behörigheter för varje lager och databas.

När du skapar en datakälla finns möjligheten att välja ett lager från en listruta. Om du lämna detta tomt och inte väljer ett lager använder Tableau ditt virtuella Snowflake-lager som standard. Om du därefter publicerar den datakällan eller arbetsboken, använder Tableau den anslutna användarens virtuella standardlager i Snowflake.

Alla användare bör tilldelas ett standardlager, så att Tableau kan använda det som standard för att öppna en arbetsbok från en Snowflake-datakälla.

Konfigurera Snowflake-serverns stöd för OAuth

Mer information om hur du konfigurerar OAuth för anslutningar mellan Tableau och Snowflake finns i Konfigurera OAuth för Snowflake-anslutningar(Länken öppnas i ett nytt fönster).

Använda en proxy för Snowflake

Du kan ansluta från Tableau via en proxy till Snowflake. Om du använder Tableau version 2019.4 eller senare kan du konfigurera anslutningen med kopplingens dialogruta genom att ange de nödvändiga parametrarna på fliken Avancerat.

Till exempel:

proxy=http://proxyserver.company:80

Mer information om vilka parametrar du ska använda finns i Snowflake-dokumentationen(Länken öppnas i ett nytt fönster).

Obs! Tableau använder inte en DSN för att ansluta till Snowflake, så du kan ignorera instruktionerna i Snowflake-dokumentationen om att använda en DSN.

Om du använder en tidigare version av Tableau än 2019.4 kan du konfigurera anslutningen genom att ange parametrarna i en TDC-fil med odbc-extras.

Till exempel:

Kopiera
<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>

Mer information finns i artikeln Anpassa anslutningssträngen för en namngiven koppling(Länken öppnas i ett nytt fönster).

Felsökning

Prestanda

Använd följande information för att lösa eventuella prestandaproblem som du kan uppleva när du använder Tableau med Snowflake.

Hämta storlek

När du använder obegränsade VARCHAR- eller VARBINARY-fält returnerar drivrutinen fältstorleken som 16M. Det gör att Tableau använder en liten hämtningsstorlek för att hålla sig inom minnesbegränsningarna, vilket resulterar i en långsam frågehastighet. Det finns flera sätt att lösa detta på.

Schemaändringar

Om du lägger till en storlek i kolumndefinitionen, till exempel VARCHAR(256), kommer det att tillåta Tableau att beräkna den optimala hämtningsstorleken.

TDC-anpassningar

  • Du kan använda drivrutinsparametrarna default_varchar_size eller default_binary_size. Du kan även

ställa in en maximal fältstorlek för obegränsade fält.

  • Du kan använda det avancerade användargränssnittet eller en TDC.

  • Du måste även ställa in en ytterligare funktion CAP_ODBC_FETCH_BUFFERS_RESIZABLE.

Obs! Den här lösningen fungerar inte för Tableau Cloud, såvida du inte använder Tableau Bridge.

  • Om du använder Tableau Bridge kan du installera TDC hos Bridge-värden, så att den gäller för alla anslutningar som passerar den värden. Några exempel följer nedan.

Popup-dialogrutan Parameter

Använd denna TDC om du planerar att anpassa fältstorleken för varje datakälla med hjälp av föregående gränssnitt.

Kopiera
<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>

Använd denna TDC för att tillämpa anpassningarna för alla datakällor.

Kopiera
<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>

Vanliga frågor

Här följer några vanliga problem och hur du löser dem.

Jag har stött på ett fel ”Fältet XXX finns inte”. Vad ska jag göra?

Det här felet uppstår när du använder ett beräkningsfält, lägger till det i arbetsbladet och ersätter datakällan med Snowflake-data (anpassad SQL).

Använd funktionen Ersätt fältreferenser för att lösa felet. Ytterligare information om hur du ersätter fältreferenser finns i Ersätta fältreferenser.

 

Se även

Tack för din feedback!Din feedback har skickats in. Tack!