Webcast Fridays are 20-30 minute presentations every other Friday that show off some of the more interesting work we do hoping you will find it informative and inspiring.
On the second ever Webcast Friday that InterWorks has produced, I had the honor of speaking to our web audience about Tableau Server performance. In this talk, I wanted to highlight what a server does for us, what makes a server run slowly, what aspects make up a Tableau Server and how to optimize your server and workbooks, among some other subjects I touch upon.
What Does a Server Do and What Makes It Slow?
There are four core resources that make up a server: Processor, Memory, Disk and Network. Whenever I mention Tableau Server performance scalability, these are the four core resources I’m referring to. To optimize your Tableau Server, you must find out what issues are slowing these down and resolve them. That being said, you can only deal with one issue at a time.
About Tableau Server
There are several vital functionalities that Tableau Server is comprised of. They are:
- Licensing Service
- Cluster Controller
- Search Service
- vizQL Server
- Application Server
- Cache Server
- Data Engine
- File Store Process
These are the “big deals” that consume the four core resources. During the Webcast, I gave an abridged version of their functions, but these aspects are what I am particularly passionate about whenever speaking on the subject of Tableau Server.
Within this list, there are four main points that are most likely to consume the four core resources. The vizQL renders the viz, therefore, can consume a lot of memory and processing power. Data Engine loads the Tableau data extract, causing constraint on memory and processor. Memory is typically my number one concern. Backgrounder can consume all your memory and really just put constraint all the things! Last is repository, which can absorb a lot of the processor and risk operations as well. Other processes may consume some of your core resources, but these are the main big ones.
Your workbooks and their design is the main reason why your resources are being depleted. The more complex the workbook is, the more data is stored in your memory. So, here are a few ways you can optimize your workbooks:
- Prep your data and aggregate all the details that you can.
- Optimize your calculations. This means removing any unnecessary logic.
- Reduce queries.
This should be self-explanatory, but you are basically going to run some tests to check if your workbooks are more efficient.
- Set up monitoring. Capture statistics about which four core resources are taking up the most of your server’s capacity. Power Tools: Server is an amazing tool for this and will save you a lot of time working with your Tableau server.
- Generate a load with a program, not people. If you conduct a test with people, you aren’t going to get accurate results regarding how your users will interact with your dashboard.
- Analyze for contention. This way you can see the weaknesses and what resources are running slowly.
These tests aren’t fool-proof, however. What I mean by this is you may have zero contention, but your server is still running slow. Don’t worry too much though, that is what we are here for. If you’d like more information about this, shoot me an email at firstname.lastname@example.org and I can send you a Tableau scalability whitepaper, a slide deck with notes and a Tableau performance checklist.
Catch the Next Webcast Friday!
Webcast Fridays is a new, bi-weekly occurring video series for us! You can catch the videos live every other week, or you can find them posted here on the blog. If you have a subject you’d like us to talk about, feel free to let us know in the comments. Until next time.