Hello Reader,
let’s dive in with some tips on how to maximise performance on your workbook.
1. Start with a performance recording, and then list your steps so you can compare them accurately (do the three things that are slow for example), you can use this to compare PRE & POST performance recording. Total time for each activity happening. Look at the reduction of time within your performance recording after making adjustments.
2. Calculation Best Practice. Order of where the calculation happens. Think about where the calculation happens for speed, it's a lot like thinking about how Excel works and using a VLOOKUP to reference things VS index & match (if you’re familiar with Excel). Whenever you reference a calculation, it has to keep going through them, so cleaner quicker calcs are better.
3. Joins / Relationships / Unions - Only relate when we absolutely must. If they're at different levels of detail we use relationships, and are then we are only blending data we need to use.
4. Custom SQL: Can be a way of only selecting the data we need, aggregating up what we want - this is sort of a side-step to doing this in Tableau Prep, in which you would do similar.
5. Quick Filters: If you use 'Show Only Relevant' it has to go back to the data each and every time. Need to caveat that due to the filters it will be slow. When utilizing the filter, the following in order are the best in terms of performance; Action, Wild Card, Apply, Only Relevant. Having an apply to filters on dashboards does help with particularly large datasets, as you don’t have to wait through each iteration of filter in the instance of multiple values being filtered.
6. Hiding Data vs Removing Data - if I hide fields for visuals, the query has already taken place. However, if I’m hiding something dynamic. For instance, only wanting to highlight the most recent year & previous year & hide the other colours, this type of hiding is not requiring the query to execute and boomerang – negatively effecting run time.
7. Rendering your Dashboards. Adding more detail also slows it down, if you don’t need the field then remove it & pop it in the Tooltip. This refers to Dashboard Size, Fixed / Automatic / Range. Fixed – Automatic to fit the screen size – back to fixed.
8. Remove superfluous data. This one is quite simple, are there extra fields not adding much value? Remove it. If it not mandatory, simply remove it at it is extra processing.
9. Is a table necessary? A table of data is sometimes a wall of text (this isn’t to disparage tables of text as I quite enjoy them personally), as a result – it can be a lot of different fields being displayed and potentially filtered, especially in the event of a matrix. Is this table the only way you can visualize your data?
10. Context Filters completely breakdown the cache, each context filter reloads the cache'd values from the data source.