Live Connection
Create a data source in Tableau Online, Tableau Server or Tableau Desktop to connect to Honeydew. Tableau connection uses the SQL interface with the Honeydew driver using the Trino protocol. A Honeydew domain will be presented to the data model as a single virtual table.Metadata Sync
When Metadata Sync is enabled, Honeydew synchronizes the following additional metadata to the Tableau Data Source:- Field type (metric or attribute) - every attribute is defined as a Tableau dimension, and every metric as a measure.
- Field display names. When no display name is set, Honeydew creates an automatic user friendly name.
- Field folders. When no folder is set, Honeydew uses the uses the entity name as folder names.
- Field hidden property.
- Field descriptions.
- Field format and semantic role (through metadata configuration).
Tableau-specific Metadata
Attributes and Metrics: You can add Tableau-specific metadata, that specifies the default formatting or the semantic role, to an attribute or a metric in the schema:default-format values (Tableau documentation):
C1033%'n#,##0;-#,##0'*dd/mmm/yyp0.0%
semantic-role values are:
[Geographical].[Latitude][Geographical].[Longitude][City].[Name][State].[Name][Country].[ISO3166_2][ZipCode].[Name]
Tableau Catalog
Honeydew can also synchronize metadata (including descriptions and back-links to Honeydew definitions) with Tableau Catalog. When enabled, this is in addition to the metadata synchronized with the Tableau Data Source.Tableau Catalog Sync requires the Tableau Data Management feature enabled in your Tableau.
Dimensions
Any Honeydew attribute can be used as a Tableau dimension.Measures
Any Honeydew metric can be used as a Tableau measure. To use a metric use the “use metric in Tableau” functionality to generate its expression based on its type. The metrics are defined as Tableau as regular measures - any aggregation will return the actual metric computation. For example,SUM([Lineitem Median Revenue]) in Tableau would translate into calculating the median revenue.
Filters
Tableau filters are supported, include regular filters, context filters, top / bottom filters and conditional filters. Any Honeydew attribute or a Honeydew metric can be used as a filter. Filters are automatically pushed down to the source in order to optimize performance.Cross-entity queries
Any entity in Honeydew can be used in a Tableau Workbook. Joins are automatically constructed by Honeydew. They are based on the relationships between entities that are used in a particular Tableau Sheet.Calculated Fields
Custom fields are supported, including Bins, Groups, custom dimension aggregations and custom field expressions.Live Connection Limitations
- Joins on Honeydew datasets in the Data Source definition are not supported. Instead, add the required entities to the dynamic dataset, and Honeydew will figure out on the fly the needed joins for each user query in a Tableau Sheet.
- Level of Detail expression are not supported. There is no need for them to control granularity as it is done automatically. For complex use cases, use grouped metrics.
- Using conditional filters as context filters for other conditional filters (nested conditional filtering) is not supported.
- For performance considerations when working with a live connection, see performance acceleration in Honeydew.
Extracts
Tableau Extracts can be built on top of any dynamic dataset in Honeydew. They can be done in two modes:- On a TABLE or a VIEW managed by Honeydew (requires to set up Snowflake delivery)
- By using the Snowflake Native Application
With a VIEW or a TABLE
Dynamic datasets can be set up deployment to Snowflake. The resulting VIEW or TABLE can be used for a Tableau Extract.With Snowflake Native Application
Create a Snowflake connection, and in the initial SQL add the following code to read from a dynamic dataset:workspace, a working branch in it (usually would be prod), and a dynamic dataset dataset.
This calls a stored procedure to retrieve dynamic dataset data, and stores it in a temporary table
used to build the extract.
Then create a Custom SQL data source with the query
Troubleshooting
Tableau sends user credentials instead of embedded credentials
Issue: Sometimes Tableau sends a user’s Tableau credentials to Honeydew, even though the workbook uses a published data source with embedded credentials such as a service account API key. Solution: Reset the Snowflake credentials that Tableau keeps on file:- In Tableau Online or Server, click on the user avatar in upper right corner, open My Account Settings and locate Saved Credentials for Data Sources.
- Remove every Snowflake entry.
- Re-add the removed Snowflake credentials again.
- Test the workbook again. The data source embedded credentials should now be used.