Ready to get started?

Learn more about the CData ODBC Driver for JSON or download a free trial:

Download Now

Visualize JSON Services in Tableau

The CData ODBC driver for JSON enables you integrate JSON services into Tableau dashboards.

The CData ODBC Driver for JSON enables you to access live JSON services in business intelligence tools like Tableau. In this article, you will integrate JSON services into a dashboard that reflects changes to JSON services in real time.

The CData ODBC drivers offer unmatched performance for interacting with live JSON services in Tableau due to optimized data processing built into the driver. When you issue complex SQL queries from Tableau to JSON, the driver pushes supported SQL operations, like filters and aggregations, directly to JSON and utilizes the embedded SQL engine to process unsupported operations (often SQL functions and JOIN operations) client-side. With built-in dynamic metadata querying, you can visualize and analyze JSON services using native Tableau data types.

Connect to JSON as an ODBC Data Source

If you have not already, first specify connection properties in an ODBC DSN (data source name). This is the last step of the driver installation. You can use the Microsoft ODBC Data Source Administrator to create and configure ODBC DSNs.

See the Getting Started chapter in the data provider documentation to authenticate to your data source: The data provider models JSON APIs as bidirectional database tables and JSON files as read-only views (local files, files stored on popular cloud services, and FTP servers). The major authentication schemes are supported, including HTTP Basic, Digest, NTLM, OAuth, and FTP. See the Getting Started chapter in the data provider documentation for authentication guides.

After setting the URI and providing any authentication values, set DataModel to more closely match the data representation to the structure of your data.

The DataModel property is the controlling property over how your data is represented into tables and toggles the following basic configurations.

  • Document (default): Model a top-level, document view of your JSON data. The data provider returns nested elements as aggregates of data.
  • FlattenedDocuments: Implicitly join nested documents and their parents into a single table.
  • Relational: Return individual, related tables from hierarchical data. The tables contain a primary key and a foreign key that links to the parent document.

See the Modeling JSON Data chapter for more information on configuring the relational representation. You will also find the sample data used in the following examples. The data includes entries for people, the cars they own, and various maintenance services performed on those cars.

When you configure the DSN, 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.

Add JSON Services to a Dashboard

  1. Click Connect to Data -> More Servers -> Other Databases (ODBC).
    Select the CData Data Source Name (for example: CData JSON Source).
  2. In the Database menu, select CData.
  3. In the Table box, enter a table name or click New Custom SQL to enter an SQL query. This article retrieves the people table.
  4. Drag the table onto the join area. At this point, you can include multiple tables, leveraging the built-in SQL engine to process complex data requests.
  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. The optimized data processing native to CData ODBC drivers enables unmatched performance in live connectivity.
  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. Drop the [ personal.name.first ] column in the Dimensions pane onto the dashboard. When you select dimensions, Tableau builds a query to the driver. The results are grouped based on that dimension. In Tableau, the raw query is automatically modified as you select dimensions and measures.
  8. Drag the [ personal.name.last ] column in the Measures field onto the Detail and Color buttons. Tableau executes the following query:

    SELECT [ personal.name.first ], SUM([ personal.name.last ]) FROM people GROUP BY [ personal.name.first ]

    When you select a measure, Tableau executes a command to the driver to calculate a summary function, such as SUM, AVG, etc., on the grouped values. The SQL engine (embedded within the driver) is leveraged to process the aggregation of the data, where needed, providing a seamless experience in Tableau, regardless of the data source.

    To change the summary function, open the [ personal.name.last ] menu and select the summary you want in the Measure command.

  9. You can create other charts using dimensions and measures to build SQL queries visually:

With the CData ODBC Driver for JSON, you get live connectivity to your JSON services, allowing you to build real-time charts, graphs, and more.