For using Tableau with CrateDB, install the latest PostgreSQL driver, as detailed in the steps below:
- Download the Java 8 JDBC driver (e.g.
postgresql-42.7.1.jar
or newer) from Download | pgJDBC - Move the downloaded
.jar
-file (e.g.postgresql-42.7.1.jar
) into the Tableau Driver folder- Windows:
C:\Program Files\Tableau\Drivers
- Mac:
~/Library/Tableau/Drivers
- Linux:
/opt/tableau/tableau_driver/jdbc
- Windows:
- Open Tableau
- Create a
PostgreSQL
connection
- Start using Tableau with CrateDB
Using Tableau with old CrateDB versions
CrateDB 5.1 and older
As of CrateDB 5.0.0 there are still some features missing to directly use the default PostgreSQL Connector in CrateDB (e.g. DECLARE CURSOR
support), therefore it is best to use a Other Databases (JDBC)
connection with the latest PostgreSQL JDBC Driver. To improve the user experience Tableau allows to customize connections using .tdc
(Tableau Datasource Customization) files.
If we see significant demand, we might look into creating a custom Tableau Connector, however we also expect CrateDB to be fully compatible with the default PostgreSQL Connector soon.
Customize CrateDB Connection
- Download the latest PostgreSQL JDBC Driver
- Move the downloaded
.jar
-file (e.g.postgresql-42.4.1.jar
) into the Tableau Driver folder- Windows:
C:\Program Files\Tableau\Drivers
- Mac:
~/Library/Tableau/Drivers
- Linux:
/opt/tableau/tableau_driver/jdbc
also see Other Databases (JDBC) - Tableau
- Windows:
- Create an empty .tdc (Tableau Datasource Customization) file e.g.
crate-jdbc.tdc
- Copy the following content into the file:
<connection-customization class='genericjdbc' enabled='true' version='10.0'> <vendor name='genericjdbc' /> <driver name='postgresql' /> <customizations> <customization name='CAP_CONNECT_STORED_PROCEDURE' value='no'/> <customization name='CAP_CREATE_TEMP_TABLES' value='no'/> <customization name='CAP_FAST_METADATA' value='yes'/> <customization name="CAP_FORCE_COUNT_FOR_NUMBEROFRECORDS" value="yes"/> <customization name='CAP_JDBC_QUERY_ASYNC' value='yes'/> <customization name='CAP_JDBC_QUERY_CANCEL' value='yes'/> <customization name='CAP_QUERY_HAVING_REQUIRES_GROUP_BY' value='no'/> <customization name="CAP_QUERY_SUBQUERIES_WITH_TOP" value="yes"/> <customization name="CAP_QUERY_TOP_N" value="yes"/> <customization name='CAP_QUERY_TOPSTYLE_LIMIT' value='yes'/> <customization name='CAP_SELECT_INTO' value='no'/> <customization name='CAP_SUPPRESS_TEMP_TABLE_CHECKS' value='yes'/> </customizations> </connection-customization>
- Save the
.tdc-file
in yourDatasources
folder (e.g./Users/<username>/Documents/My Tableau Repository/Datasources/crate-jdbc.tdc
- Open Tableau
- Create an
Other Databases (JDBC)
connectionURL: jdbc:postgresql://localhost:5432/doc
Dialect: PostgreSQL
Username: crate
Password: - Start using Tableau with CrateDB