How do you generally perform load testing in Tableau?

Load testing in Tableau is done to understand the server’s capacity with respect to its environment, data, workload, and use. It is preferable to conduct load testing at least 3-4 times in a year because with every new user, upgrade, or content authoring, the usage, data, and workload change.

Tabjolt was created by Tableau to conduct point-and-run load and performance testing specifically for Tableau servers. Tabjolt:

  • Automates the process of user-specified loads
  • Eliminates dependency on script development or script maintenance
  • Scales linearly with an increase in the load by adding more nodes to the cluster

Load testing helps you understand your Tableau Server’s capacity with respect to your unique environment, data, workload, and usage profile. Because data, workload, and usage will change as new content is authored, new users are onboarded, and the use of analytics increases, load testing should be conducted two to four times a year in conjunction with upgrades and server scale-up or scale-out expansions.

Created by Tableau, TabJolt is a point-and-run load and performance testing utility specifically designed for Tableau Server. It helps you understand how Tableau Server scales with increasing workloads to inform your capacity needs. TabJolt automates user-specified loads for any duration, while eliminating the need for script development and script maintenance, which is often required with other load testing solutions. With increasing user loads, Tableau Server scales nearly linearly with load by adding more nodes to the cluster for Windows and Linux.

Load testing best practices are listed below:

  • Load testing should be conducted with TabJolt on an identical test environment with content restored from the production environment. This is not only from a hardware and Tableau Server topology perspective but also in terms of data volume.
  • Select representative content from your top-viewed workbooks. Often the cause of scalability and performance issues can be workbooks being not authored with best practices in mind. If a single-user test on your workbooks shows a very slow response time, then you should optimize those workbooks before you begin a load-testing project.
  • During testing, increase the workload to 75-85% CPU utilization and < 2% error rate.
  • Start with the default process configuration determined by Tableau Server’s architecture-aware installer and scale up or out as needed when the threshold is met and sustained.
  • In most cases, increasing process counts above the defaults does not improve performance, unless enough hardware resources are available.
  • It is always good to know the breaking point of the Server on the level of how many users/requests along with volume of data it can handle.

Developing a test plan:

  • Choose representative workbooks.
  • Model the expected usage.
  • Think about peak usage.
  • Run for at least ten minutes.
  • Include think time.
  • Stop other work on the server.

You can test if users are able to connect to their Tableau Server by carrying out three basic test tasks; Login to Tableau, Open Viz, and Refresh in the Functional Testing solution of Kinesis-CI. It will simulate how the user connects to Tableau to make sure after the upgrade, users are still able to connect