‣ Tableau
Overview¶
Tableau is a visual analytics platform for modern business intelligence. Tableau can be used to retrieve, explore, analyze and visualize data stored in Astra DB. The Tableau Platform features several products, inculding:
- Tableau Desktop,
- Tableau Prep,
- Tableau Cloud.
In this tutorial, we show how to use Tableau Desktop to connect and query data in Astra DB. We use Simba JDBC Driver for Apache Cassandra® to connect Tableau Desktop and Astra DB .
Prerequisites¶
Setup Astra DB¶
✅ 1. Sign in
Connect to your Astra account and create a new Astra database or select an existing one. Add a new keyspace with name banking_db
or use an existing one.
✅ 2. Create the following tables using the CQL Console
CREATE TABLE customer (
id UUID,
name TEXT,
email TEXT,
PRIMARY KEY (id)
);
CREATE TABLE accounts_by_customer (
customer_id UUID,
account_number TEXT,
account_type TEXT,
account_balance DECIMAL,
customer_name TEXT STATIC,
PRIMARY KEY ((customer_id), account_number)
);
✅ 3. Insert the rows using the CQL Console
INSERT INTO customer (id,name,email) VALUES (8d6c1271-16b6-479d-8ea9-546c37381ab3,'Alice','alice@example.org');
INSERT INTO customer (id,name,email) VALUES (0e5d9e8c-2e3b-4576-8515-58b491cb859e,'Bob','bob@example.org');
INSERT INTO accounts_by_customer (customer_id,account_number,account_type,account_balance,customer_name)
VALUES (8d6c1271-16b6-479d-8ea9-546c37381ab3,'A-101','Checking',100.01,'Alice');
INSERT INTO accounts_by_customer (customer_id,account_number,account_type,account_balance,customer_name)
VALUES (8d6c1271-16b6-479d-8ea9-546c37381ab3,'A-102','Savings',200.02,'Alice');
INSERT INTO accounts_by_customer (customer_id,account_number,account_type,account_balance,customer_name)
VALUES (0e5d9e8c-2e3b-4576-8515-58b491cb859e,'B-101','Checking',300.03,'Bob');
INSERT INTO accounts_by_customer (customer_id,account_number,account_type,account_balance,customer_name)
VALUES (0e5d9e8c-2e3b-4576-8515-58b491cb859e,'B-102','Savings',400.04,'Bob');
Setup Tableau Desktop¶
✅ 4. Install Tableau Desktop
Use an existing deployment of Tableau Desktop or follow the instructions to download, install and register a new instance of Tableau Desktop.
Install Simba JDBC Driver for Apache Cassandra¶
✅ 5. Download JDBC Driver
Go to https://downloads.datastax.com/#odbc-jdbc-drivers and download the latest version of Simba JDBC Driver for Apache Cassandra.
✅ 6. Install JDBC Driver
Extract the JDBC Driver .zip
archive and move the resulting .jar
file to:
/Users/[user]/Library/Tableau/Drivers
on macOSC:\Program Files\Tableau\Drivers
on Windows
Connect to Astra DB from Tableau Desktop¶
✅ 7. Restart Tableau Desktop
Start or restart Tableau Desktop for the JDBC Driver installation to take effect.
✅ 8. Setup a connection to Astra DB
- Select Other Databases (JDBC) under Connect
- Fill out the dialog box with the connection information:
- URL =
jdbc:cassandra://;AuthMech=2;UID=token;PWD=<ApplicationToken>;SecureConnectionBundlePath=<SecureConnectBundle>;TunableConsistency=1
, where- AuthMech specifies whether the driver connects to a Cassandra or Astra DB database, and whether the driver authenticates the connection. It should be set to
2
to connect to an Astra database, and authenticate the connection using a user name, password, and secure connection bundle. - UID and PWD specify user name and password credentials. They should be set to literal
token
and the actual application token value. See how to generate an application token if you do not have one already. - SecureConnectionBundlePath specifies the full path and name of the secure connection bundle associated with your Astra database. On Windows, the path should still be written using forward-slashes and not escape spaces in any particular way, as in:
c:/Users/Joan Reed/my-bundle.zip
. See how to download a secure connect bundle for your database. - TunableConsistency specifies the consistency level for requests to the database. The supported values are
0
forANY
,1
forONE
,2
forTWO
,3
forTHREE
,4
forQUORUM
,5
forALL
,6
forLOCAL_QUORUM
,7
forEACH_QUORUM
, and10
forLOCAL_ONE
. Set it to6
for this example.
- AuthMech specifies whether the driver connects to a Cassandra or Astra DB database, and whether the driver authenticates the connection. It should be set to
- Dialect =
SQL92
- Username =
<Client ID>
, where a client id value is generated with your application token. - Password =
<Client Secret>
, where a client secret is generated with your application token.
- URL =
- Click the Sign In button to establish a connection.
✅ 9. Create a data source from the banking database
- Select
cassandra
under Database. - Select
banking_db
under Schema. - Drag and drop tables
customer
andaccounts_by_customer
into the main area and establish the relationship between the tables.
✅ 10. Create a new sheet with simple visualization
Add up all account balances per customer and visualize the results:
- Click Sheet 1 at the bottom left corner.
- Drag and drop Name to Columns.
- Drag and drop Account Balance to Rows.
- Customize coloring and formatting settings as needed.