As a data analyst we have to deal with different kinds of data, be it small or large. While small data set pose minimal challenges, larger dataset often present performance issue which eventually slows down our work.
Through our project phase, we had to deal with sizable dataset, encountering lot of speed issue. That’s when I started reading more about ways to increase the performance of our tableau dashboard. These insight and small adjustments proved to be invaluable asset, greatly improving our workflow efficiency.
Let’s delve into detail about tableau dashboard and its performance.
Performance Recording:
Performance recording helps a user to identify the source of the problem by breaking down the sequence of events while updating the visualization and generating a report. This feature is mostly available in Tableau Desktop.
The performance recording should be started from an empty workbook. Once you start recording it goes through all the workbook and use the dashboard/sheet/ filter which performs the worst. Initially it will look like nothing happened , but tableau will automatically open the performance recording workbook.
On the server side , the "Load Time for views" helps us to see how the dashboard performs at an aggregated level.
Let’s understand now how can we improve the performance.
Data Strategies:
· Extract: Extract are usually preferred over live data. Usually, it is preferred to cut down to the domain specific data, rather than overloading it. If live, connection is needed, it is recommended to avoid RAWSQL and custom SQL. Usually, this method minimizes the number of records and hence enhancing the speed.
Note: Extract is not always recommended when the data is being refreshed frequently.
· Minimize the number of fields: Based on the analysis performed, it is a good practice to use “hide all unused field”.
2. Filter sequence
It is always advisable to use the filter wisely. It is recommended to understand the sequence of the filter before implementing it. When a filter is displayed, the software needs to load the member of the selected dimension. This action trigger additional queries, particularly if the filtered dimension isn’t currently visible in the view.
The below diagram shows the sequence tableau follows for the filter:
In order to increase efficiency
· Minimize the number of filters applied to reduce complexity and query execution time.
· Use Include Filter as Exclude loads the entire domain of data.
· Utilize Continuous date filter over discrete.
· Use Boolean or numeric filters which are processed faster than the string.
· Use parameter and action filter to reduce query load.
3. Shape up your calculation:
Centralize and streamline your data aggregating and consolidating into a unified repository.
· Utilize the calculation at the database level and perform row level calculation whenever you can.
· Minimize the nested calculation as a new query is run every time a calculation field is referred.
· COUNTD is one of the slowest aggregations in tableau as every time it will look for distinct value.
· Reduce LOD and Table calculation in view, instead try to use MIN or MAX in place of AVG.
4. Minimize join tables:
We have to join the tables in many cases for our visualization. But lots of join takes lots of times. If applicable, consider building your tables before pushing them into tableau. In some situation, having less data source is better for performance.
Tableau’s 2020.2 release unveiled enhanced data model capabilities, particularly with the introduction of relationships. Unlike JOIN and UNION, which established physical connections, relationships create logical connections between data source and hence boosting the performance.
5. ELSEIF rather than ELSE IF:
Consider using ELSEIF when testing multiple condition within a calculation. This approach provides the same result avoiding the need for the nested statements.
Additionally, ensure the test are properly aligned , prioritizing the most probable result for clarity and efficiency.
6.Display of the dashboard:
· Using the fixed dashboard size helps increase the performance as the “Automatic” decides the size of the dashboard before rendering.
· Avoid using the floating container if possible as it takes more computation time compared to the tiled one.
7. Organize and streamline the workbook:
Now that we have covered most of the important points, another most important things to take care is about the workbook. Everything present in tableau environment takes time to render which impacts the performance.
· Reduce the dashboard scope bye cleaning the unwanted worksheet.
· Delete or consolidate unused worksheet and data sources as each worksheet will execute its own query.
· Reducing the level of details in the graph by filtering, removing unnecessary fields, and segmenting visualization into separate worksheet enhance the workbook speed.
CONCLUSION
Implementing these best practices not only improve the speed and performance but also makes the work easy and achievable. Run test while designing the dashboard to make sure it doesn’t exceed the advisable response time and automate testing to check performance over time. With careful attention to detail, such as reducing mark count through aggregation, judicious filtering and organizing visualization, we can create a more responsive user -friendly environment. By empowering this we can make deeper insights and make informed decision.
Happy Reading and Thank you!!!
Comments