The Performance Boost option in SuperTables is a feature that will increase performance in Tableau versions above 2021.2. Although the extension is compatible with older versions of the Tableau Extensions API as well, Tableau version 2021.2 introduced new options to increase loading and data transfer speeds. When switched on, the Tableau extensions API will only transfer unformatted data from your datasheet to the extension instead of multiple formatted versions of a single cell value. If you are not on Tableau version 2021.2 or higher you do not have to switch off the performance boost but it will just not be effective. The reason we implemented it as a switch is that in some use cases (on small datasets) you do want to use the formatted values of your Tableau Datasheet (then you have to switch of performance boost).
Handling millions of records will be a hard job for dashboards using extensions since the extensions API does not support incremental loading at the moment therefore all data (formatted and/or unformatted) will be transferred to the extension in one sequential batch through the extensions API. This transfer often runs into time outs resulting in unfinished or unexpected process behaviour. The extensions API will and an ‘end data transfer’ signal but no data is actually transferred due to the interrupted transfer and therefore the extension will show a “No Data Present” message.
Tableau Developers are working on performance improvements for the extensions API and we try to help them out with our knowledge and use cases. We are however depending on the Extensions API performance which at the moment is the link causing the delayed performance experience.
When working with large datasets our advice is:
- Use an (Hyper) extract
- Remove columns from your datasheet that are of no use in your extension
- Do not format your datasheet but use this method to build a better performing datasheet: https://www.youtube.com/watch?v=JJ-S96rGcFo&list=PLk7W-GiyTaBDQX7z868t8R1nrNS3vM1dE&index=5
- Filter your datasheet (to reduce the number of rows) to a specific period, department, product category etc.
- Change the level of detail in your datasheet (to reduce the number of rows). Use Monthly aggregations instead of showing all records on a daily basis for instance.
- Apply user filters (or Row Level Security) tu reduce the number of rows on the datasheet
- Avoid using complex calculations in your datasheet (table calcs, LOD calcs, data calcs etc.)
Once the data is loaded in SuperTables it performs very swift and responsive. You can also use “pagination” options in SuperTables to increase performance. This will only affect the performance after the initial load of the data from the datasheet and not the full sequential data load that is triggered on data changes in your datasheet.