Tableau Server #
Tableau Server can connect to Starburst Galaxy or SEP to access your data. This connection is established using the Tableau data connector which uses a Tableau data connector paired with the Starburst JDBC driver.
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, use the Connection info pane to obtain the connection information.
Tableau data connector #
You can connect Tableau Server 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 Server 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 Starburst 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 version:
-
For Tableau Server 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 Server 2020.4 to 2021.1, you must first download the data connector file yourself, as described in download data connector.
Connect to Starburst #
For Tableau Server 2021.2.0 or later, follow these steps to connect to SEP or Starburst Galaxy:
-
If Tableau is open, close it and exit.
-
Download the latest Trino JDBC driver.
-
Place the JDBC driver file in the following location, dependent on which operating system you are using::
- Windows: C:\Program Files\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.
-
Start Tableau Server and log in. Click Create, then select Workbook. In the Connect to Data pane, click the Connectors tab.
-
In the list of server types, select Starburst Enterprise by Starburst. This opens a Connector Details dialog that describes the data connector.
-
Click Install. This opens a connection dialog:
-
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 four options: Username for a cluster with no authentication, Username and Password for a cluster with a password-based authentication method such as LDAP, Kerberos, or OAuth. If you select Kerberos, see Kerberos authentication. If you select OAuth, see OAuth 2.0 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:
- FULL
- Confirm that the certificate's validity is chained all the way back to a root Certificate Authority (CA).
- CA
- Confirm that the certificate is valid as far back as the included intermediate CA.
- NONE
- Confirm that the server's certificate matches the DNS name and private key of the server.
-
When the connection is made, the Connections panel shows a list of the catalogs configured in your cluster.
-
To see the available tables, select a catalog, then a schema from that catalog.
Download data connector (for older versions) #
For Tableau Server 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 Server 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:
-
Close and exit Tableau Server.
-
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. -
Move the data connector
.taco
file to the following location, dependent on which operating system you are using:- Windows: /Users/username/Documents/My Tableau Repository/Connectors
- Linux: /opt/tableau/connectors
Follow the instructions in the Tableau Server section of the Run Your Connector page provided by Tableau.
With the data connector installed, proceed to the standard Connect to Starburst procedure.
Configure an initial SQL query #
When using the Starburst data connector, best practice is to take advantage of the Initial SQL panel of the initial connection dialog.
Provide an initial SQL statement that is known to be valid and is cluster
independent, such as SHOW CATALOGS
or SELECT version()
. Do not close the
statement with a semicolon (;). For example:
Use of this panel is not required to successfully connect Tableau to clusters, but using it makes troubleshooting connection issues much easier. Without an initial SQL statement, if there is a problem connecting to the cluster, Tableau can fail to show an error dialog. This can leave the connection in a state where it appears to be successful but is unresponsive. With the initial SQL query in place, if there is a connection issue Tableau shows an error dialog that helps you diagnose the exact cause of the problem.
See the Learn More link in the Tableau Initial SQL panel for information on the limitations of the feature.
Additional authentication options #
There are additional configuration steps if you need to authenticate with OAuth 2.0 or Kerberos, 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 Starburst Support 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.
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:-Dsun.security.krb5.debug=true -Dtrino.client.debugKerberos=true \ -Djava.security.debug=gssloginconfig,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:
- Kerberos
- Enable Kerberos Run As Authentication for JDBC Connectors
- Enable Kerberos Delegation for JDBC Connectors
- Troubleshoot Kerberos
(optional) Customized JDBC connections #
If you need to set additional connection properties that are not included in Tableau’s connection dialog, customize the connection using a properties file.
For more information, see the Tableau documentation on how to customize JDBC connections using a properties file in the Tableau Community and the list of available parameters for the JDBC driver.
Newer versions of the Tableau connector show a third tab, Advanced, in the
Connector Details dialog. This tab has a single field. Extra JDBC
properties, where you can enter one or more comma-separated key-value pairs of
properties that are to be added to the JDBC connection string. This
allows you to populate the extraCredentials
property of the JDBC
driver for
authentication systems that need this parameter.
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 in Tableau, 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
WHERE c.country = 'US'
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.
Is the information on this page helpful?
Yes
No
Is the information on this page helpful?
Yes
No