Tableau Desktop #

  • Tableau data connector: The recommended connection method uses a Tableau data connector paired with the Trino JDBC driver.

  • ODBC connection: Starburst supports connecting to clusters with the Starburst ODBC driver.

  • Legacy JDBC connection: Starburst continues to support the legacy connection method that uses a plain JDBC connection and the “Other Databases (JDBC)” entry point. Starburst strongly recommends migrating from this legacy method to the Tableau data connector method.

Before you begin #

Determine the connection information for your cluster, including its network name, listening port (or default port), and your login credentials.

For Starburst Galaxy clusters, the Connection info pane provides two ways to obtain connection information:

  • Copy details: To copy user, host, and port details.
  • Download connection file: To download a Tableau-specific file, which automatically populates dialog fields with the connection details when opened in Tableau Desktop. You must provide your username and password manually.

Tableau data connector #

You can connect Tableau Desktop to Starburst Galaxy or SEP clusters with a combination of a Tableau data connector file and JDBC driver. This method requires:

  • Starburst Galaxy or SEP 354-e or later
  • Tableau Desktop 2020.4 or later
  • Trino JDBC driver 386 or later

Note that a Tableau data connector is not the same as a data source connector in SEP. The Tableau data connector is a software bridge between Tableau and the standard Trino JDBC driver. The two files work together to enable access between Tableau and one or more Starburst Galaxy or SEP clusters. The Tableau data connector is a JAR file with a name similar to StarburstEnterprise.taco.

The procedure to install and use the Tableau data connector depends on your Tableau Desktop version:

  • For Tableau Desktop version 2021.2.0 and later, the Tableau data connector is included. This allows you to select the Starburst Enterprise option directly from a Tableau menu following the standard data connector procedure.

  • For Tableau Desktop 2020.4 to 2021.1, you must first download the data connector file yourself, as described in download data connector.

Connect to Starburst #

To use Tableau Desktop versions older than 2021.2.0, you must download the data connector first. For Tableau Desktop 2021.2.0 or later, follow these steps to connect to SEP or Starburst Galaxy:

  1. If Tableau Desktop is open, close it and exit.

  2. Download the latest Trino JDBC driver.

  3. Place the JDBC driver file in the following location, depending on which operating system you are using:

    Windows: C:\Program Files\Tableau\Drivers
    macOS: ~/Library/Tableau/Drivers
    Linux: /opt/tableau/tableau_driver/jdbc

    Do not store more than one Starburst JDBC driver in this directory. Delete any older drivers when you update to a newer version. Connections to all connected data sources are made through the JDBC driver.

  4. Start Tableau Desktop. In the left column, under To a Server, click More.

  5. In the list of server types, select Starburst Enterprise by Starburst. This opens a Connector Details dialog that describes the data connector.

  6. Click Install. This opens a connection dialog:

      Tableau Connector login dialog

  7. Fill in the connection dialog with the following parameters:

    Field Value
    Server Hostname or IP address of your cluster.
    Port Port used by your cluster.
    Authentication Use the drop-down list to select among five options:
    • Username for a cluster with no authentication
    • Username and Password for a cluster with a password-based authentication method such as LDAP
    • Kerberos
    • OAuth
    • JWT

    If you select Kerberos, see Kerberos authentication. If you select OAuth, see OAuth 2.0 authentication. If you select JWT, see JWT authentication.
    Username Your username for Starburst Galaxy or SEP.
    Password (If selected) the password for the specified Username.
    Require SSL Select this checkbox if your cluster has any authentication enabled. When selected, the following field appears.
    SSL Verification Select an entry in the drop-down list to specify how rigorously the server’s certificate is to be validated.

    The values for SSL Verification have the following meanings:

    Confirm that the certificate's validity is chained all the way back to a root Certificate Authority (CA).
    Confirm that the certificate is valid as far back as the included intermediate CA.
    Confirm that the server's certificate matches the DNS name and private key of the server.
  8. When the connection is made, the Connections panel shows a list of the catalogs configured in your cluster.

      Tableau Connector list of catalogs

  9. To see the available tables, select a catalog, then a schema from that catalog.

      Tableau list of tables

  10. Select a table, or select multiple tables and specify relationships or joins.

Download data connector (for older versions) #

For Tableau Desktop with versions 2020.4 through 2021.1, the Tableau data connector for Starburst Enterprise does not appear automatically in the list of Additional Connectors. To get Starburst Enterprise to appear in that list, either:

  • Upgrade your Tableau Desktop to version 2021.2.0 or later, or

  • Prepare your Tableau installation as described in the following steps before attempting to connect to a cluster.

Follow these steps to manually download the Tableau data connector for Starburst Enterprise:

  1. Close and exit Tableau Desktop.

  2. From the Starburst Enterprise page of Tableau’s web-based Extension Gallery, download the Tableau data connector file whose name is similar to StarburstEnterprise.taco. Use the Download button on the upper right of the page. This requires logging into Tableau’s site with a free login.

  3. Move the data connector .taco file to the following location, depending on which operating system you are using:

    Windows: C:\Users\username\Documents\My Tableau Repository\Connectors
    macOS: /Users/username/Documents/My Tableau Repository/Connectors

With the data connector installed, proceed to the standard Connect to Starburst procedure.

Additional authentication options #

There are additional configuration steps if you need to authenticate with OAuth 2.0, as described in the following section. If you are using SEP, you may also authenticate with Kerberos or JWT. Configuration steps for those two authentication methods are also described in the following sections.

OAuth 2.0 authentication #

To use OAuth 2.0 to connect to Starburst, you must request and install a custom data connector file. Contact your account team for more information.

If you have a custom data connector file, install it as described in the download data connector section.

Kerberos authentication #

When configuration a connection to a SEP cluster, if you choose Kerberos in the Authentication drop-down, additional connection options appear in the Connection dialog.

Tableau Connector login dialog with Kerberos authentication

The first four fields including Username are the same as described. The Kerberos-specific fields are described in the following table:

Field Value
Kerberos Principal The Kerberos principal to use when authenticating to the SEP cluster. If not set, the value is read from the keytab file.
Kerberos Remote Service Name SEP cluster Kerberos service name. This parameter is required for Kerberos authentication.
Kerberos Service Principal Pattern SEP coordinator Kerberos service principal pattern. The default is ${SERVICE}@${HOST}. ${SERVICE} is replaced with the value of Kerberos Remote Service Name and ${HOST} is replaced with the hostname of the coordinator (after canonicalization, if enabled).
Kerberos configuration file path Path to the local Kerberos configuration file.
Kerberos keytab file path Path to the local Kerberos keytab file.

Use the same paths for the keytab and configuration file that are used after publishing a SEP data source to Tableau. If they are not specified, default locations are used.

To troubleshoot Kerberos:

  • Set the JAVA_TOOL_OPTIONS environment variable on the Tableau host to include: -Dtrino.client.debugKerberos=true \,configfile,configparser,logincontext
  • Check the Tableau log files that have jprotocolserver in their name, located in the \data\tabsvc\logs\dataserver directory on Tableau.

For further information on configuring and troubleshooting Kerberos on Tableau, see:

ODBC driver connection #

Contact Starburst Support to obtain access to the Starburst ODBC driver to connect to SEP with Tableau Desktop. The Presto ODBC driver provided by Tableau is not supported.

Open Tableau Desktop and begin the ODBC configuration. On the startup page, select Other Databases (ODBC), and configure as follows:

  • Driver: Starburst ODBC Driver
  • Username: <username>
  • String Extras: Driver=Starburst ODBC Driver;Catalog=<catalog>;Host=<host>;Port=<portDriver>;

The String Extras field supports any of the ODBC connection properties from the Starburst ODBC driver.

Select Sign In to establish the connection. If you are prompted for a password, this means the cluster has authentication enabled.

The Tableau ODBC documentation contains further information.

Legacy JDBC driver connection #

Tableau Desktop provides a generic connection method titled Other Databases (JDBC). Although Starburst strongly recommends using a Tableau data connector, this generic JDBC connection method is still available. Follow these steps:

  1. Download the latest Trino JDBC driver.

  2. Place the JDBC driver JAR file in the Tableau drivers directory:

    C:\Program Files\Tableau\Drivers

    Do not store more than one Trino JDBC driver in this directory. Delete any older drivers when you update to a newer version. Connections to all connected data sources are made through the Trino JDBC driver.

  3. Start Tableau Desktop and select Connect to a server using the Other Databases (JDBC) connector in Tableau.

  4. Fill in the connection dialog as shown in the following table. For the URL field, use a JDBC connection string in this format:


    The JDBC connection string must include the initial catalog to connect to. Once connected, you can select schemas and tables within that catalog, or select a different catalog.

    If your cluster has TLS enabled, append the property ?SSL=true to the connection string.

    Field Value
    URL Full JDBC connection string for your cluster. Must include a catalog name, such as `mysql` in the following example.
    Dialect Must be 'SQL92'
    Username Your username
    Password Your password
    Properties File Specify or browse to the path of a JDBC properties file containing further specifications for this connection. See Customized JDBC Connections.

      Tableau Other Databases login dialog

Starburst advantage #

Remember that Starburst Enterprise and Starburst Galaxy are not databases. They are SQL query engines that can connect to multiple data sources at the same time. Each cluster can query multiple catalogs in a wide range of different data sources.

Although Tableau is typically configured to access one specific catalog and schema, it is possible to query more than one data source with a single Tableau connection.

To query multiple catalogs, select New Custom SQL and then reference the fully-qualified name of any table in the cluster using the full catalog.schema.table syntax.

The following example query accesses four catalogs: postgresql, hive, mysql, and sqlserver.

SELECT c.custkey
  , c.state
  , c.estimated_income
  , cp.customer_segment
  , a.cc_number
  , pp.cc_type
  , a.mortgage_id
  , a.auto_loan_id
FROM postgresql.burst_bank.customer c
JOIN hive.burst_bank.account a on c.custkey = a.custkey
JOIN mysql.burst_bank.product_profile pp on a.custkey = pp.custkey
JOIN sqlserver.burst_bank.customer_profile cp on c.custkey = cp.custkey
AND c.state NOT IN ('AA', 'AE', 'AP')

This approach is faster because all table access is managed by Starburst on the Starburst Galaxy or SEP cluster, and takes advantage of Starburst query optimization.

Tableau is also capable of joining data from multiple data sources, but this approach creates an unnecessary workload on Tableau, and can negatively impact Tableau performance.