Tableau
Connect Tableau to Dremio to derive powerful insights from your data and create real-time dashboards.
You can connect from your Tableau application to Dremio in either of two ways:
- Configure a reusable connection in Tableau Desktop, Tableau Server, or Tableau Cloud to a project in Dremio
- Connect to a dataset by opening
.tds
file that you downloaded from Dremio
Supported Versions
Product | Supported Versions |
---|---|
Tableau Desktop | 2020.4 and later |
Tableau Server | 2020.4 and later |
Tableau Cloud | 2021.3 and later |
It is not recommended to use Tableau Desktop 2021.3.4, due to a known issue in that version. For information about the known issue, see this article in Tableau's Knowledge Base.
Supported Authentication Methods
You can authenticate to Dremio through OAuth 2.0 for single sign-on (SSO) authentication. Alternatively, you can authenticate with a username and password, or with a personal access token that you have obtained from Dremio. If you want to authenticate your connection to Dremio by using a personal access token, see Personal Access Tokens.
If you want to authenticate through OAuth 2.0 for SSO authentication, follow these steps to enable SSO.
If you want to connect securely from Tableau Desktop on macOS to Dremio, follow these steps to enable SSL.
Enabling Single Sign-On (SSO) Authentication to Dremio from Tableau
You can configure Dremio to use SSO authentication when users connect to Dremio from Tableau Server or from Tableau Desktop. Users of Tableau Desktop will use SSO authentication whether connecting directly to Dremio or connecting through a .tds
file downloaded from Dremio.
Using OAuth 2.0 for SSO authentication is supported by Tableau Server 2021.2 and later, and by Tableau Desktop 2022.3 and later.
Before enabling SSO authentication, configure your Dremio cluster for SSO authentication.
To enable SSO authentication to Dremio from Tableau:
-
In Dremio, click the Settings icon and select the BI Applications page.
-
On the BI Applications page, click Tableau.
-
Ensure that Enable single sign-on for Tableau is toggled on.
Enabling SSL for macOS
If you've enabled SSL/TLS for JDBC connections for your Dremio server, and you are running Tableau Desktop on macOS, you must perform additional steps to fully enable secure communications.
-
Obtain the certificate from your Dremio server.
-
Install the certificate in the
Install .der certificatecacerts
truststore, which comes with your Java 8 runtime. The location of the truststore is typically$JAVA_HOME/jre/lib/security/cacert/
. To install the.der
certificate, perform a command like the following:sudo keytool -importcert -alias dremio -keystore $JAVA_HOME/jre/lib/security/cacerts -storepass changeit -file /path/to/dremioServerCert.der
-
Verify that the certificate has been added.
Verify certificate was addedkeytool -keystore cacerts -storepass changeit -list | grep -A1 dremio
dremio, Dec 16, 2019, trustedCertEntry,Certificate fingerprint (SHA1): 2B:2B:F6:D4:79:64:33:59:AB:43:3E:D9:17:C9:FD:A7:5E:C1:6D:42
Once complete, you must ensure that the Require SSL option is selected when adding your Dremio server to Tableau Desktop.
Tableau Desktop
If you are using Tableau Desktop 2021.2 or later, the recommended method of connecting to Dremio is by using the native Dremio connector. Alternatively, you can connect by using a Dremio connector that you install yourself.
If you are using Tableau Desktop 2021.1 or earlier, you must connect to Dremio by using a Dremio connector that you install yourself.
If you want to use SSO authentication when connecting to Dremio, you must connect by using a Dremio connector that you install yourself.
Before attempting to connect from Tableau Desktop to Dremio, ensure that Java 8 or later is installed on your system.
Connecting with Tableau Desktop's Native Connector for Dremio
Tableau Desktop 2021.2 and later includes a connector that you can use to connect to Dremio. However, the connector requires the Dremio JDBC driver to be on your system.
Prerequisites
-
Download the Dremio JDBC driver and copy it to the Tableau Desktop's
Drivers
folder:-
macOS
Download driver for macOS
In a Terminal window, run the following command to download the driver to~/Library/Tableau/Drivers
. As an alternative, you can download the driver from the download site and move it to the folder by using Finder.curl -L https://download.dremio.com/jdbc-driver/dremio-jdbc-driver-LATEST.jar -o ~/Library/Tableau/Drivers/dremio-jdbc-driver-LATEST.jar
-
Windows
Download driver for Windows
In a command-line window, run the following command as an administrator to download the driver toC:\Program Files\Tableau\Drivers
. As an alternative, you can download the driver from the download site and move it to the folder by using File Explorer.curl -L https://download.dremio.com/jdbc-driver/dremio-jdbc-driver-LATEST.jar -o C:\PROGRA~1\Tableau\Drivers\dremio-jdbc-driver-LATEST.jar
-
-
If you want to add JDBC parameters to the JDBC URL that Tableau generates for connections to Dremio, parameters other than those Tableau sets through the Dremio connection dialog, see Use a PROPERTIES file to customize a JDBC connection in the Tableau documentation.
Steps for Connecting
-
Open Tableau Desktop. If you already have Tableau Desktop open, restart the application.
-
Under the To a Server section in the Connect panel, click More.
-
Select Dremio. The Dremio connection dialog opens.
-
In the Server field, specify the Dremio DNS configured on your system.
-
In the Port field, specify the port, if it differs from the default port, which is
31010
. -
In the Username and Password fields, specify your Dremio credentials:
-
If you want to authenticate with your Dremio username and password, specify them in these fields.
-
If you have a personal access token, specify your username and then paste the token into the Password field.
-
-
If your Dremio cluster is configured for secure connections, select the Require SSL option.
-
(Optional) In the Advanced tab, specify the engine, queue, and tag. For information about how these values are used, see Workload Management.
-
Click Sign In.
Connecting After Manually Installing the Connector for Dremio
You can use this method of connecting with any supported version of Tableau Desktop.
If you want to use single sign-on authentication (SSO) when connecting to Dremio, ensure that SSO is enabled.
Prerequisites
-
If you are using Tableau Desktop 2021.1 or earlier, follow these steps:
a. Download the
dremio.taco
file from the Tableau Extension Gallery.b. Move the
dremio.taco
file to Tableau Desktop'sConnectors
folder:-
macOS
Move dremio.taco file for macOS
In a Terminal window, run the following command:cp <download-location>/dremio.taco ~/Documents/My\ Tableau\ Repository/Connectors/
-
Windows
Move dremio.taco file for Windows
In a command-line window, run the following command:copy C:\<download-location>\dremio.taco C:\Users\[user]\Documents\My Tableau Repository\Connectors
-
-
If you are using Tableau Desktop 2021.2 or later, follow these steps:
a. Download the
dremio.taco
file.b. Move the
dremio.taco
file:-
macOS
Copy dremo.taco file for macOS
In a Terminal window, run the following command to copy thedremio.taco
file to Tableau Desktop'sConnectors
folder. Create theConnectors
folder if it doesn't already exist.cp <download-location>/dremio.taco ~/Library/Tableau/Connectors/
-
Windows
Copy dremio.taco file for Windows
In a command-line window, run the following command to copy thedremio.taco
file to Tableau Desktop'sConnectors
folder. Create theConnectors
folder if it doesn't already exist.copy C:\<download-location>\dremio.taco C:\Program Files\Tableau\Connectors
-
-
Download the Dremio JDBC driver and copy it to Tableau Desktop's
Drivers
folder:-
macOS
Download driver for macOS
In a Terminal window, run the following command to download the driver to~/Libary/Tableau/Drivers
. As an alternative, you can download the driver from the download site and move it to the folder by using Finder.curl https://download.dremio.com/jdbc-driver/dremio-jdbc-driver-LATEST.jar -o -l ~/Library/Tableau/Drivers/dremio-jdbc-driver-LATEST.jar
-
Windows
Download driver for Windows
In a command-line window, run the following command to download the driver toC:\Program Files\Tableau\Drivers
. As an alternative, you can download the driver from the download site and move it to the folder by using File Explorer.curl -L https://download.dremio.com/jdbc-driver/dremio-jdbc-driver-LATEST.jar -o -l C:\PROGRA~1\Tableau\Drivers\dremio-jdbc-driver-LATEST.jar
-
-
If you want to add JDBC parameters to the JDBC URL that Tableau generates for connections to Dremio, parameters other than those Tableau sets through the Dremio connection dialog, see Use a PROPERTIES file to customize a JDBC connection in the Tableau documentation.
Steps for Connecting
-
Open Tableau Desktop. If you already have Tableau Desktop open, restart the application.
-
Under the To a Server section in the Connect panel, click More.
-
Select Dremio. The Dremio connection dialog opens.
-
In the Server field, specify the hostname or IP address for Dremio.
-
In the Port field, specify the port, if it differs from the default port, which is
31010
. -
In the Authentication field, select either OAuth 2.0 or Username and Password.
-
If you selected OAuth 2.0 in the Authentication field, and your Dremio cluster is configured for single sign-on authentication, specify one of these URLs in the Dremio Authentication Server field, replacing
<dremio-host>
with the hostname or IP address for your Dremio coordinator node:- If your Dremio cluster does not use SSL:
http://<dremio-host>:9047
- If your Dremio cluster does use SSL:
https://<dremio-host>:9047
- If your Dremio cluster does not use SSL:
-
If you selected Username and Password in the Authentication field, specify your Dremio credentials:
-
If you want to authenticate with your Dremio username and password, specify them in these fields.
-
If you have a personal access token, specify your username and then paste the token into the Password field.
-
-
If your Dremio cluster is configured for secure connections, select the Require SSL option.
-
(Optional) In the Advanced tab, specify the engine, queue, and tag. For information about how these values are used, see Workload Management.
-
Click Sign In.
-
If you chose to use single sign-on authentication, follow these steps:
a. Sign into your identity provider. You are taken to the sign-in screen only the first time that you log into Dremio during a session in Tableau Desktop.
b. Click Accept in the Authorize App dialog. This dialog appears only the first time that you authenticate from Tableau Desktop through your identity provider.
Creating a Live Connection to a Dataset from Dremio
You can generate a Tableau Datasource (.tds
) file that represents a "live connection" to a dataset that is in Dremio. No actual data is stored in this file.
If you want to use single sign-on authentication when connecting to Dremio through the .tds
file, ensure that you download the file only after single sign-on authentication is enabled and configured for your Dremio cluster.
- On the Datasets page in Dremio, find the dataset you want to work with and click it to open it in the SQL editor.
- Above the top-right corner of the editor, click the button that displays the Tableau logo. Dremio downloads a
.tds
file to your system. - Open the
.tds
. - Provide your credentials:
-
If you are not using single sign-on authentication, provide your Dremio credentials.
-
If you are using single sign-on authentication, follow these steps:
- Sign into your identity provider. You are taken to the sign-in screen only the first time that you log into Dremio during a session in Tableau.
- Click Accept in the Authorize App dialog. This dialog appears only the first time that you authenticate from Tableau through your identity provider.
-
Exporting a Dremio Dataset with SSL
If you have SSL enabled on Dremio, and you want to export a .tds
file to use in a Tableau application for quickly connecting to a dataset,
you can do so by add the support key export.tableau.extra-native-connection-properties
and set the value to SSL=true
.
This property allows you to set the JDBC connection string when exporting a .tds
file. The default is an empty string. This is the only property currently supported for export.tableau.extra-native-connection-properties
, and true
is the only supported value.
To know how to set the export.tableau.extra-native-connection-properties
support key, see Support Keys.
Changing the Hostname
You can use the export.bi.hostname
support key to change the default hostname of the SQL endpoint for generating TDS files. The export.bi.hostname
property is available from Dremio version 13.0.0.
To know how to set the export.bi.hostname
support key, see Support Keys.
Example: SSL setting
In the following example, SSL (for generating a self-signed certificate with an JDBC Dremio configuration) is enabled in the dremio.conf file. See Using Wire Encryption for more information.
Example SSL settingsservices.coordinator.client-endpoint.ssl.enabled: true
services.coordinator.client-endpoint.ssl.auto-certificate.enabled: true
Example: export.tableau.extra-native-connection-properties value
Example SSL property valueSSL=true
Tableau Server
If you are using Tableau Server 2021.2 or later, the recommended method of connecting to Dremio is by using the native Dremio connector. Alternatively, you can connect by using a Dremio connector that you install yourself.
If you are using Tableau Server 2021.1 or earlier, you must connect to Dremio by using a Dremio connector that you install yourself.
Prerequisite
If you are a Tableau Server admin and you want users to authenticate from Tableau Server to Dremio by means of OAuth 2.0 and single sign-on (SSO), you must follow these steps:
-
To configure OAuth for Tableau Server, run the following command in the Tableau Services Manager (TSM) command line. The only variable that you need to set the value for is
Configure OAuth for Tableau Server<tableau-server-domain-name-or-ip>
, which is the domain name or IP of your Tableau Server deployment:tsm configuration set -k oauth.config.clients -v "[{\"oauth.config.id\":\"dremio\", \"oauth.config.client_id\":\"https\:\/\/connectors.dremio.app\/tableau\", \"oauth.config.client_secret\":\"test-client-secret\", \"oauth.config.redirect_uri\":\"https://<tableau-server-domain-name-or-ip>/auth/add_oauth_token\"}]" --force-keys
-
To apply the changes to Tableau Server, run the command
tsm pending-changes apply
. -
In Dremio, click the Settings icon and select the BI Applications page.
-
On the BI Applications page, click Tableau.
-
Ensure that Enable single sign-on for Tableau is toggled on, if it isn't already.
-
In the Redirect URIs field, paste in the redirect URI for your Tableau Server. If you have set up more than one Tableau Server, you can add multiple URIs, separating them with commas. Each URI uses this format, where
Redirect URI for Tableau Server<tableau-server>
is the hostname or IP address of Tableau Server:https://<tableau-server>/auth/add_oauth_token
Connecting with Tableau Server's Native Connector for Dremio
Tableau Server 2021.2 and later includes a connector that you can use to connect to Dremio. However, the connector requires the Dremio JDBC driver to be on your system.
Prerequisites
-
Download the Dremio JDBC driver and copy it to Tableau Desktop's
Drivers
folder:-
Windows
Download driver for Windows
In the command line, run the following command to download the driver toC:\Program Files\Tableau\Drivers
. As an alternative, you can download the driver from the download site and move it to the folder by using File Explorer.curl -L https://download.dremio.com/jdbc-driver/dremio-jdbc-driver-LATEST.jar -o -l C:\Progra~1\Tableau\Drivers\dremio-jdbc-driver-LATEST.jar
-
Linux
Download driver for Linux
Download the driver from the download site and move it by using this command:mv <download-location>/dremio-jdbc-driver-LATEST.jar /opt/tableau/tableau_driver/jdbc/dremio-jdbc-driver-LATEST.jar
-
-
If you want to add JDBC parameters to the JDBC URL that Tableau generates for connections to Dremio, parameters other than those Tableau sets through the Dremio connection dialog, see Use a PROPERTIES file to customize a JDBC connection in the Tableau documentation.
Steps for Connecting
-
In a web browser, navigate to your Tableau Server site.
-
In your workbook, click Add a Data Source. Alternatively, you can publish an existing data source to Tableau Server.
-
In the Connect to Data dialog, select Dremio under the Connectors tab.
-
In the Dremio connection dialog, for Server, enter the Dremio DNS configured on your system.
-
For Port, enter the port if it differs from the default
31010
port. -
In the Username and Password fields, specify your Dremio credentials:
-
If you want to authenticate with your Dremio username and password, specify them in these fields.
-
If you have a personal access token, specify your username and then paste the token into the Password field.
-
-
If your Dremio cluster is configured for secure connections, select the Require SSL option.
-
(Optional) In the Advanced tab, you can specify the Engine, Queue, and Tag.
-
Click Sign In.
Connecting After Manually Installing the Connector for Dremio
You can use this method of connecting with any supported version of Tableau Server.
If you want to use single sign-on authentication (SSO) when connecting to Dremio, ensure that SSO is enabled.
Prerequisites
-
If you are using Tableau Server 2021.1 or earlier, follow these steps:
a. Download thedremio.taco
file from the Tableau Extension Gallery.b. Move the
dremio.taco
file to Tableau Server'sConnectors
folder:-
Windows In a command-line window, run the following command:
Move dremio.taco file for Windowscopy C:\<download-location>\dremio.taco C:\ProgramData\Tableau\Tableau Server\data\tabsvc\vizqlserver\Connectors
-
Linux Run the following command:
Move dremio.taco file for Linuxmv <download-location>/dremio.taco /var/opt/tableau/tableau_server/data/tabsvc/vizqlserver/Connectors/dremio.taco
-
-
If you are using Tableau Server 2021.2 or later, follow these steps:
a. Download the
dremio.taco
file.b. Move the
dremio.taco
file:-
Windows In a command-line window, run the following command:
Move dremio.taco file for Windowscopy C:\<download-location>\dremio.taco C:\Progra~1\Tableau\Connectors
-
On Linux: Run the following command:
Move dremio.taco file for Linuxmv <download-location>/dremio.taco /opt/tableau/connectors/dremio.taco
-
-
Download the Dremio JDBC driver and copy it to Tableau Desktop's
Drivers
folder:-
Windows
Download driver for Windows
In the command line, run the following command to download the driver toC:\Program Files\Tableau\Drivers
. As an alternative, you can download the driver from the download site and move it to the folder by using File Explorer.curl -L https://download.dremio.com/jdbc-driver/dremio-jdbc-driver-LATEST.jar -o -l C:\Progra~1\Tableau\Drivers\dremio-jdbc-driver-LATEST.jar
-
Linux
Download driver for Linux
Download the driver from the download site and move it by using this command:mv <download-location>/dremio-jdbc-driver-LATEST.jar /opt/tableau/tableau_driver/jdbc/dremio-jdbc-driver-LATEST.jar
-
-
If you want to add JDBC parameters to the JDBC URL that Tableau generates for connections to Dremio, parameters other than those Tableau sets through the Dremio connection dialog, see Use a PROPERTIES file to customize a JDBC connection in the Tableau documentation.
Steps for Connecting
-
In a web browser, navigate to your Tableau Server site.
-
In your workbook, click Add a Data Source. Alternatively, you can publish an existing data source to Tableau Server.
-
In the Connect to Data dialog, select Dremio under the Connectors tab.
-
In the Dremio connection dialog, for Server, enter the Dremio DNS configured on your system.
-
For Port, enter the port if it differs from the default
31010
port. -
In the Authentication field, select either OAuth 2.0 or Username and Password.
-
If you selected OAuth 2.0 in the Authentication field, and your Dremio cluster is configured for single sign-on authentication, specify one of these URLs in the Dremio Authentication Server field, replacing
<dremio-host>
with the hostname or IP address for your Dremio coordinator node:- If your Dremio cluster does not use SSL:
http://<dremio-host>:9047
- If your Dremio cluster does use SSL:
https://<dremio-host>:9047
- If your Dremio cluster does not use SSL:
-
If you selected Username and Password in the Authentication field, specify your Dremio credentials:
-
If you want to authenticate with your Dremio username and password, specify them in these fields.
-
If you have a personal access token, specify your username and then paste the token into the Password field.
-
-
If your Dremio cluster is configured for secure connections, select the Require SSL option.
-
(Optional) In the Advanced tab, you can specify the Engine, Queue, and Tag.
-
Click Sign In.
-
If you chose to use single sign-on authentication, follow these steps:
a. Sign into your identity provider. You are taken to the sign-in screen only the first time that you log into Dremio during a session in Tableau Server.
b. Click Accept in the Authorize App dialog. This dialog appears only the first time that you authenticate from Tableau Server through your identity provider.
Tableau Cloud
Connecting to Dremio
If you want to use single sign-on authentication (SSO) when connecting to Dremio, ensure that SSO is enabled.
-
In a web browser, navigate to your Tableau Cloud site.
-
In your workbook, click Add a Data Source. Alternatively, you can publish an existing data source to Tableau Cloud.
-
In the Connect to Data dialog, select Dremio under the Connectors tab.
-
In the Server field in the Dremio connection dialog, specify the hostname or IP address of your Dremio coordinator node.
-
In the Port field, enter the port if it differs from the default
31010
port. -
In the Authentication field, select either OAuth 2.0 or Username and Password.
-
If you selected OAuth 2.0 in the Authentication field, and your Dremio cluster is configured for single sign-on authentication, specify one of these URLs in the Dremio Authentication Server field, replacing
<dremio-host>
with the hostname or IP address for your Dremio coordinator node:- If your Dremio cluster does not use SSL:
http://<dremio-host>:9047
- If your Dremio cluster does use SSL:
https://<dremio-host>:9047
- If your Dremio cluster does not use SSL:
-
If you selected Username and Password in the Authentication field, specify your Dremio credentials:
-
If you want to authenticate with your Dremio username and password, specify them in these fields.
-
If you have a personal access token, specify your username and then paste the token into the Password field.
-
-
If your Dremio cluster is configured for secure connections, select the Require SSL option.
-
(Optional) In the Advanced tab, you can specify the Engine, Queue, and Tag.
-
Click Sign In.
-
If you chose to use single sign-on authentication, follow these steps:
a. Sign into your identity provider. You are taken to the sign-in screen only the first time that you log into Dremio during a session in Tableau Cloud.
b. Click Accept in the Authorize App dialog. This dialog appears only the first time that you authenticate from Tableau Cloud through your identity provider.
Troubleshooting Tableau Client Connections
Dremio users may need to perform one of the following workarounds if they are using the specified version of Tableau to access a Dremio deployment.
Tableau 2019.4
Start Tableau from the command line with the -DDisableVerifyConnectorPluginSignature=true
option. For example:
cd /Applications/Tableau Desktop 2019.4.app/Contents/MacOS
./Tableau -DDisableVerifyConnectorPluginSignature=true
Dremio JDBC 14.0 or Earlier
If you are running Java v9+, set the following environment variable on the machine running Tableau:
Set environment variableJAVA_TOOL_OPTIONS=-Dcdjd.io.netty.tryReflectionSetAccessible=true