Snowflake

In dit artikel wordt beschreven hoe u Tableau verbindt met een Snowflake-datawarehouse en de databron instelt.

Gebruiksnotities: sleutelpaarverificatie met Snowflake

  • Om sleutelpaarverificatie met Snowflake te kunnen gebruiken, moet u versie 3.4.0 of hoger van een ODBC-stuurprogramma van Snowflake installeren.
  • Sleutelpaarverificatie is vanaf versie 2024.3 beschikbaar voor Tableau Desktop en Tableau Cloud. Deze functie is in een toekomstige versie beschikbaar in Tableau Server.
  • Het publiceren van werkmappen met Snowflake-sleutelpaarverificatie wordt niet ondersteund bij webauthoring. U moet Tableau Desktop gebruiken om de werkmappen te maken, die vervolgens kunnen worden gepubliceerd naar Tableau Cloud.

Voordat u begint

Verzamel de volgende verbindingsinformatie voordat u begint:

  • Naam van de server waarmee u verbinding wilt maken
  • Verificatiemethode:
    • OAuth: gebruik deze methode als u federatie vanuit een IDP wilt inschakelen.
    • Gebruikersnaam en wachtwoord: gebruik deze methode als u gebruikersreferenties in Snowflake wilt opslaan.
    • Okta-gebruikersnaam en wachtwoord: gebruik deze methode als u van plan bent Okta te gebruiken om uw verificatie te beheren.
    • Sleutelpaarverificatie: gebruik openbare en persoonlijke sleutelpaarreferenties voor een sterkere beveiligingsverbinding.
  • De aanmeldreferenties zijn afhankelijk van de verificatiemethode die u kiest.
    Opmerking: Als u sleutelpaarverificatie gebruikt, moet u OpenSSL versie 3.x of nieuwer gebruiken om de sleutels te maken.
  • (Optioneel) Initiële SQL-statement die elke keer wordt uitgevoerd wanneer Tableau verbinding maakt.
  • (Optioneel) Eventuele aangepaste stuurprogrammaparameters of een nieuwe standaard VARCHAR-grootte voor gebruik met deze verbinding.

Opmerking: Om Tableau Cloud met sleutelpaarverificatie te gebruiken, moet u ook referenties opslaan in Tableau Cloud voordat u werkmappen kunt publiceren om te delen. Zie Snowflake configureren voor sleutelpaarverificatie voor meer informatie.

Stuurprogramma vereist

Voor deze connectors is een stuurprogramma vereist om met de database te communiceren. Als het stuurprogramma niet op uw computer is geïnstalleerd, geeft Tableau in het verbindingsdialoogvenster een bericht weer met een koppeling naar de pagina Stuurprogramma downloaden(Link wordt in een nieuw venster geopend), waar u stuurprogrammalinks en installatie-instructies kunt vinden.

Opmerking: Om sleutelpaarverificatie met Snowflake te kunnen gebruiken, moet u versie 3.4.0 of hoger van een ODBC-stuurprogramma van Snowflake installeren.

De verbinding maken en de databron instellen

Nadat u Snowflake als uw verbinding hebt geselecteerd, wordt er een dialoogvenster getoond met drie tabbladen. Gebruik het tabblad Algemeen om de server, het warehouse en het verificatietype te selecteren. Met het tabblad Initiële SQL kunt u desgewenst aan het begin van elke verbinding een SQL-opdracht uitvoeren. Zie Initiële SQL uitvoeren voor meer informatie. Ten slotte kunt u met het tabblad Geavanceerd desgewenst aangepaste stuurprogrammaparameters en een standaard VARCHAR-grootte toevoegen.

Zie OAuth configureren voor Snowflake-verbindingen(Link wordt in een nieuw venster geopend) en Externe OAuth voor Snowflake voor informatie over het configureren van OAuth voor verbindingen tussen Tableau en Snowflake.

Tableau verbinden met uw data

  1. Ga op het scherm Verbinding maken naar de optie Naar een server, selecteer Meer en selecteer vervolgens Snowflake.
  2. Ga naar het tabblad Algemeen en voer de naam in van de server waarmee u verbinding wilt maken.
  3. (Optioneel) Voer de gewenst opties in voor Rol en Warehouse.
  4. Selecteer de verificatiemethode die u wilt gebruiken: Gebruikersnaam en wachtwoord, Okta-gebruikersnaam en wachtwoord, Aanmelden met OAuth of Aanmelden met behulp van een sleutelpaar.
  5. (Optioneel) Selecteer Initiële SQL als u aan het begin van elke verbinding een SQL-opdracht wilt uitvoeren. Zie Initiële SQL uitvoeren voor meer informatie.
  6. (Optioneel) Voer voor Tableau Desktop en Server op het tabblad Geavanceerd eventuele aangepaste parameters in die u voor deze verbinding wilt gebruiken. (Niet beschikbaar op Tableau Cloud)
  7. Voltooi de inlogstappen voor de geselecteerde verificatiemethode:
    • Aanmelden met OAuth:
      1. Klik op Aanmelden.
      2. Op de webpagina die wordt geopend logt u in bij Snowflake door uw gebruikersnaam en wachtwoord in te voeren en vervolgens Inloggen te selecteren. Of selecteer Eenmalige aanmelding als Snowflake is geconfigureerd om SSO te ondersteunen.
      3. Klik op OK om te bevestigen dat u toestemming hebt voor toegang tot uw Snowflake-data.
    • Gebruikersnaam en wachtwoord:
      1. Voer de gebruikersnaam en (optioneel) een wachtwoord in.
      2. Klik op Aanmelden.
    • Okta-gebruikersnaam en -wachtwoord:
      1. Voer de gebruikersnaam en (optioneel) een wachtwoord in.
      2. Voer de optionele SAML-IdP in (de URL voor uw Okta-server).
      3. Klik op Aanmelden.
    • Aanmelden met behulp van een sleutelpaar
      1. Ga naar Server en voer het Snowflake-serveradres in.
      2. Ga naar de Warehouse en selecteer (optioneel) de Rol.
      3. Bij Verificatie selecteert u de optie Aanmelden met sleutelpaar.
      4. Voer de Gebruikersnaam in die aan dit sleutelpaar is gekoppeld.
      5. Ga naar Privésleutelbestand en blader naar het .p8-bestand met uw persoonlijke sleutel.
      6. (Optioneel) Voer het Wachtwoord van privé-sleutelbestand in als het bestand is beveiligd met een wachtwoord.
  8. Volg vervolgens de instructies onder De databron instellen.
  9. Als Tableau de verbinding niet tot stand kan brengen, controleer dan of uw referenties kloppen. Als u nog steeds geen verbinding kunt maken, heeft uw computer problemen met het lokaliseren van de server. Neem contact op met uw netwerk- of databasebeheerder voor hulp.

Time-out van toegangstoken: valideer altijd de TDC van het toegangstoken

Het Snowflake-toegangstoken verloopt na 10 minuten. Bij bepaalde processen voor extractvernieuwing worden later in de taak nieuwe verbindingen tot stand gebracht, wanneer het toegangstoken al is verlopen. Om dit probleem aan te pakken, hebben we een nieuwe functionaliteit toegevoegd. Deze is vanaf Tableau 2024.2 standaard ingeschakeld. Om deze mogelijkheid in oudere versies in te schakelen, kunt u de volgende TDC gebruiken.

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

Deze TDC kan worden gebruikt met Tableau Desktop of Tableau Server door deze op te nemen in de map Datasources van de Tableau-repository. Voor Tableau Cloud kunt u Bridge gebruiken en een aangepaste TDC configureren door via Bridge verbinding te maken. Zie Een verbinding aanpassen en afstemmen voor meer informatie.

Opmerking: ingesloten TDC's worden niet ondersteund met flows.

De verbinding aanpassen met stuurprogrammaparameters

U kunt de verbinding die met de Snowflake-connector is gemaakt, wijzigen door op het tabblad Geavanceerd stuurprogrammaparameters toe te voegen aan de verbindingsreeks.

Opmerking: u kunt de door Tableau gegenereerde stuurprogrammaparameters niet wijzigen. U kunt alleen parameters toevoegen.

Deze syntaxis geeft bijvoorbeeld een proxyserver aan die moet worden gebruikt wanneer de waarden no_proxy niet worden gehaald en hostnamen de proxyserver mogen omzeilen:

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

Zie Een proxy voor Snowflake gebruiken voor een ander voorbeeld van aangepaste stuurprogrammaparameters.

U kunt ook een alternatieve grootte voor VARCHAR invoeren in het veld Standaard VARCHAR-grootte (bytes). Raadpleeg de Snowflake ODBC-documentatie voor meer informatie over het gebruik van dit veld en de gevolgen voor de prestaties.

Opmerking: als u aanpassingen wilt doorvoeren zonder deze in de databron in te sluiten, kunt u parameters configureren in het register op Windows (alleen parameters die zijn gemarkeerd als 'Configuratieparameters' zijn beschikbaar). Zie ODBC-configuratie en verbindingsparameters op de Snowflake-website voor meer informatie over stuurprogrammaparameters.

De databron instellen

Op de pagina Databron doet u het volgende:

  1. (Optioneel) Selecteer de standaard databronnaam boven aan de pagina en voer vervolgens een unieke databronnaam in voor gebruik in Tableau. Gebruik bijvoorbeeld een naamgevingsconventie voor databronnen waarmee andere gebruikers van de databron kunnen bepalen met welke databron ze verbinding moeten maken.

  2. Selecteer uit de vervolgkeuzelijst Warehouse het warehouse of gebruik het tekstvak om op naam naar een warehouse te zoeken.

    Opmerking: als u dit leeg laat en geen warehouse selecteert, gebruikt Tableau uw standaard virtuele Snowflake-warehouse.

    Zie Standaard virtuele warehouses in Snowflake voor meer informatie.

  3. Selecteer uit de vervolgkeuzelijst Database een database en open deze. Of gebruik het tekstvak om op naam naar een database te zoeken.
  4. Selecteer uit de vervolgkeuzelijst Schema een schema of gebruik het tekstvak om op naam naar een schema te zoeken.
  5. Selecteer onder Tabel een tabel of gebruik het tekstvak om op naam naar een tabel te zoeken.
  6. Sleep een tabel naar het canvas en selecteer vervolgens het tabblad Blad om uw analyse te starten.

Opmerking: Als u uw werkmappen publiceert met behulp van sleutelpaarverificatie, zorg er dan voor dat u het juiste verificatietype selecteert in de sectie Databronnen beheren van het venster Werkmap publiceren.

Aanmelden op een Mac

Als u Tableau Desktop op een Mac gebruikt, moet u bij het invoeren van de servernaam om verbinding te maken een volledig gekwalificeerde domeinnaam gebruiken, zoals mydb.test.ourdomain.lan, in plaats van een relatieve domeinnaam, zoals mydb of mydb.test.

U kunt het domein ook toevoegen aan de lijst met zoekdomeinen voor de Mac-computer. Wanneer u dan verbinding maakt, hoeft u alleen de servernaam op te geven. Als u de lijst met zoekdomeinen wilt bijwerken, gaat u naar Systeemvoorkeuren > Netwerk > Geavanceerd en opent u het tabblad DNS.

Standaard virtuele warehouses in Snowflake

Wanneer u een Snowflake-databron maakt, maakt u een Snowflake-warehouse (voor rekenhulpbronnen) en Snowflake-databases (voor datahulpbronnen). Voor toegang tot warehouses en databases zijn machtigingen vereist. U kunt verschillende warehouses gebruiken voor toegang tot dezelfde database, afhankelijk van de rekenkracht die u nodig hebt. Hierbij geldt wel dat u voor elk warehouse en elke database de juiste machtigingen dient te hebben.

Wanneer u een databron maakt, kunt u een warehouse selecteren uit een vervolgkeuzelijst. Als u dit leeg laat en geen warehouse selecteert, gebruikt Tableau uw standaard virtuele Snowflake-warehouse. Als u die databron of werkmap vervolgens publiceert, gebruikt Tableau de standaard virtuele Snowflake-warehouse van die persoon wanneer deze verbinding maakt.

Aan elke gebruiker moet een standaardwarehouse zijn toegewezen, zodat Tableau deze als standaardwarehouse kan gebruiken om een werkmap te openen vanuit een Snowflake-databron.

Een proxy voor Snowflake gebruiken

U kunt vanuit Tableau via een proxy verbinding maken met Snowflake. Als u Tableau versie 2019.4 of hoger gebruikt, kunt u deze configureren met het dialoogvenster Connector door de vereiste parameters in te typen op het tabblad Geavanceerd.

Bijvoorbeeld:

proxy=http://proxyserver.company:80

Zie de Snowflake-documentatie(Link wordt in een nieuw venster geopend) voor informatie over de parameters die u moet gebruiken.

Opmerking: Tableau gebruikt geen DSN om verbinding te maken met Snowflake. U kunt de instructies in de Snowflake-documentatie over het gebruik van een DSN dus negeren.

Als u een versie van Tableau van vóór 2019.4 gebruikt, kunt u deze configureren door de parameters in een TDC-bestand in te voeren met odbc-extras.

Bijvoorbeeld:

Kopiëren
<connection-customization class='snowflake' enabled='true' version='19.1'> 
<vendor name='snowflake' /> 
<driver name='snowflake' /> 
   <aanpassingen> 
   <aanpassingen naam='odbc-connect-string-extras' waarde='proxy=http://proxyserver.company:80' /> 
   </aanpassingen></connection-customization>

Zie het artikel De verbindingsreeks voor een systeemeigen connector aanpassen(Link wordt in een nieuw venster geopend) voor meer informatie.

Problemen oplossen

Prestaties en ophaalgrootte

Voor de beste prestaties, vooral bij extracten, moet Tableau een optimale ophaalgrootte bepalen. De optimale grootte kan op twee manieren worden bepaald: door limieten in te stellen voor velden met een variabele lengte en door buffers met aanpasbare grootte in te schakelen. Voor de beste resultaten gebruikt u beide manieren.

De huidige ophaalgrootte bepalen

De gebruikte ophaalgrootte wordt vastgelegd in de tabprotosrv-logboeken. Tabprotosrv is het sandboxproces voor het stuurprogramma. Hier is een voorbeeld:

ODBCRowsetSource::ODBCRowsetSource: Er wordt geprobeerd de rijophaalgrootte in te stellen op 4128 rijen, met 254 bytes per rij

Opmerking: Voor een aantal van de onderstaande suggesties zijn TDC's vereist, maar deze werken niet op Tableau Cloud, tenzij u Tableau Bridge gebruikt. Met Tableau Bridge kunt u de TDC op de Bridge-host installeren, zodat deze wordt toegepast op alle verbindingen die via die host lopen.

Limieten voor variabele veldlengte

Bij gebruik van niet-gebonden VARCHAR- of VARBINARY-velden retourneert het stuurprogramma de veldgrootte als 16 MB. Hierdoor gebruikt Tableau een kleine ophaalgrootte om binnen de geheugenlimieten te blijven. Dit resulteert in lage querysnelheden. Er zijn verschillende manieren om dit aan te pakken:

  • Voeg een limiet toe aan de kolomdefinitie in de database, zoals VARCHAR(256), of wikkel de tabel in een weergave die hetzelfde doet.
  • Gebruik het veld 'Standaard VARCHAR-grootte (bytes)' op het tabblad Geavanceerd wanneer u verbinding maakt met Snowflake in Tableau Desktop. In Tableau 2024.3 is de naam gewijzigd. Deze was eerder 'Max. VARCHAR-grootte', maar de functionaliteit is hetzelfde. Hiermee wordt de parameter default_varchar_size voor het ODBC-stuurprogramma ingesteld, waardoor de veldgrootte die naar Tableau wordt geretourneerd, wordt beperkt. Zie https://docs.snowflake.com/en/developer-guide/odbc/odbc-parameters(Link wordt in een nieuw venster geopend) voor meer informatie.
  • Gebruik een TDC-aanpassing zoals hieronder:

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

CAP_ODBC_FETCH_BUFFERS_RESIZABLE inschakelen

Dit is standaard ingeschakeld vanaf Tableau 2024.3. Bij eerdere versies kunt u een TDC gebruiken. U zou een TDC zoals hieronder gebruiken als u de default_varchar_size wilt configureren in de database.

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

Veelgestelde vragen

Hier zijn enkele veelvoorkomende problemen en stappen om deze op te lossen.

Ik krijg de foutmelding 'Dit veld XXX bestaat niet'. Wat moet ik doen?

Deze fout treedt op wanneer u een berekend veld gebruikt, het toevoegt aan het werkblad en de databron vervangt door de Snowflake-data (CustomSQL).

Gebruik de functie Veldverwijzingen vervangen om de fout op te lossen. Zie Veldverwijzingen vervangen voor aanvullende informatie over het vervangen van veldverwijzingen.

 

Zie ook

Bedankt voor uw feedback.De feedback is verzonden. Dank u wel.