Visualize Elasticsearch Data from Tableau



Use the Tableau Desktop business intelligence tool to connect to Elasticsearch data.

With CData Drivers for Elasticsearch, you can use data access standards to unlock connectivity to business intelligence tools like Tableau. The CData JDBC Driver for Elasticsearch allows you to connect from Tableau on Windows and macOS. This article covers how to discover schemas and query Elasticsearch data data in real-time.

NOTE: If you are using Tableau 2020.3 or higher, you can use the CData JDBC Driver for Elasticsearch. If you wish to connect to Elasticsearch data in Tableau Cloud, you will need to use CData Connect Cloud.

About Elasticsearch Data Integration

Accessing and integrating live data from Elasticsearch has never been easier with CData. Customers rely on CData connectivity to:

  • Access both the SQL endpoints and REST endpoints, optimizing connectivity and offering more options when it comes to reading and writing Elasticsearch data.
  • Connect to virtually every Elasticsearch instance starting with v2.2 and Open Source Elasticsearch subscriptions.
  • Always receive a relevance score for the query results without explicitly requiring the SCORE() function, simplifying access from 3rd party tools and easily seeing how the query results rank in text relevance.
  • Search through multiple indices, relying on Elasticsearch to manage and process the query and results instead of the client machine.

Users frequently integrate Elasticsearch data with analytics tools such as Crystal Reports, Power BI, and Excel, and leverage our tools to enable a single, federated access layer to all of their data sources, including Elasticsearch.

For more information on CData's Elasticsearch solutions, check out our Knowledge Base article: CData Elasticsearch Driver Features & Differentiators.


Getting Started


Connect to Elasticsearch in Tableau

Before starting Tableau, make sure you've placed the .jar file in the correct folder:

  • Windows: C:\Program Files\Tableau\Drivers
  • MacOS: ~/Library/Tableau/Drivers

Once your .jar file is in place, establishing a connection is straightforward.

  1. Start Tableau.
  2. Under To a Server, select More.
  3. Select Other Databases (JDBC)
  4. Enter the JDBC connection string in the URL field.
  5. Set the Server and Port connection properties to connect. To authenticate, set the User and Password properties, PKI (public key infrastructure) properties, or both. To use PKI, set the SSLClientCert, SSLClientCertType, SSLClientCertSubject, and SSLClientCertPassword properties.

    The data provider uses X-Pack Security for TLS/SSL and authentication. To connect over TLS/SSL, prefix the Server value with 'https://'. Note: TLS/SSL and client authentication must be enabled on X-Pack to use PKI.

    Once the data provider is connected, X-Pack will then perform user authentication and grant role permissions based on the realms you have configured.

    Built-in Connection String Designer

    For assistance in constructing the JDBC URL, use the connection string designer built into the Elasticsearch JDBC Driver. Either double-click the .jar file or execute the .jar file from the command-line.

    From Windows:

    java -jar 'C:\Program Files\CData[product_name]\lib\cdata.jdbc.elasticsearch.jar'

    From MacOS:

    java -jar cdata.jdbc.elasticsearch.jar

    Fill in the connection properties and copy the connection string to the clipboard.

    When you configure the JDBC URL, you may also want to set the Max Rows connection property. This will limit the number of rows returned, which is especially helpful for improving performance when designing reports and visualizations.

    The following is a sample URL created in the designer:

    jdbc:elasticsearch:Server=127.0.0.1;Port=9200;User=admin;Password=123456;
  6. Select Sign in.

Discover Schemas and Query Data

  1. Select CData from the Database pull-down menu.
  2. Select CData from the Schema pull-down menu.
  3. Drag the table onto the join area. You can include multiple tables.
  4. Select Update Now or Automatically Update. Update Now lets you preview the first 10,000 rows of the data source (or enter the number of rows you want to see in the Rows text box). Automatically Update automatically reflects the changes in the preview area.
  5. In the Connection menu, select the Live option, so that you skip loading a copy of the data into Tableau and instead work on real-time data.
  6. Click the tab for your worksheet. Columns are listed as Dimensions and Measures, depending on the data type. The CData Driver discovers data types automatically, allowing you to leverage the powerful data processing and visualization features of Tableau.
  7. Click and drag a field from the Dimensions or Measures area to Rows or Columns. Tableau creates column or row headers.
  8. Select one of the chart types from the Show Me tab. Tableau displays the chart type that you selected.

Using the CData JDBC Driver for Elasticsearch with Tableau, you can easily create robust visualizations and reports on Elasticsearch data. Download a free, 30-day trial and get started today.

Ready to get started?

Download a free trial of the Elasticsearch Driver to get started:

 Download Now

Learn more:

Elasticsearch Icon Elasticsearch JDBC Driver

Rapidly create and deploy powerful Java applications that integrate with Elasticsearch.