Getting started as a Tableau Server Administrator - Part 2
In the previous post, I spoke about the essentials of Tableau Server, the components, high level permissions model, setup recommendations and some tips and tricks. Now that we've gone through the more elementary aspects of being a Tableau Server Administrator, I will go into more detail into the tools and features you can use to ensure you provide a robust and responsive Tableau Server platform.
The administrative views
You may or may not know that you already have access to many views that sit on top of Tableau server which give you some sort of indications of what is going on with Tableau Server. I will stick to the Server Administrator views, but site admins also get access to a subset of them at site level.
To access these views, you need to make sure you are managing all sites and the click on the status button. Below is an example from Tableau Server 10.1
Below are the views available. (Note: there may be some differences due to Server version)
Traffic to Views
Usage and users for published views.
Traffic to Data Sources
Usage and users for published data sources.
Actions by All Users
Actions for all users.
Actions by Specific User
Actions for a specific user, including items used.
Actions by Recent Users
Recent actions by users, including last action time and idle time.
Background Tasks for Extracts
Completed and pending extract task details.
Background Tasks for Non Extracts
Completed and pending background task details (non-extract).
Stats for Load Times
View load times and performance history.
Stats for Space Usage
Space used by published workbooks and data sources, including extracts and live connections.
Background Task Delays
Difference between scheduled and actual start times of background tasks.
Performance of Views
Overall distribution of view load times and slowest views in a given time period.
Server Disk Space
Current and historical disk space usage, by server node.
It's very important that once you have your Tableau Server environment set up, that you are able to test the overall performance. The reason for this is because you want to offer the best experience you can using the resources you have at your disposal. Although your hardware may meet the minimum requirements for installation - it may not be suitable for your production use-cases. There are numerous ways in which you can test this, two of which are explained here.
This is a way of testing the way how a workbook performs on the server and how responsive the published version of a workbook can be.
The first step is to ensure performance recording is enabled. To do this, go to the site which contains the workbook(s) you wish to record and go to the Settings tab. You then need to find the Workbook Performance Metrics menu item and ensure the box is checked.
Once this is done, navigate to the workbook you wish to test and open up a view. On the browser address bar you will see a URL like so:
You will need to append the following to the URL so it looks like this:
The way you will know that it is working is that you will see a "show performance recording" item now:
Once you are done interacting with the views, you can click on this item and be able to see the results of your recording. You can also download the workbook for later use.
This is Tableau's own free point-and-run load and performance testing tool. You can essentially point it at an instance of Tableau Server and simulate a worker load on it to see how it performs. The reason why this is so good is that it's done by Tableau so they are aware of the underlying framework and how elements work. You setup load generators and based on certain configurations, it collects metrics and results based on what you've set.
A few use-cases where TabJolt could be useful would be:
- Upgrading server versions
- Checking upgraded hardware
- Checking workbooks for optimisation
- User concurrency tests
After the tests are run you will then be given a Tableau workbook which will have pre-built results connected to the underlying TabJolt postgres database. You will be able to create your own as well.
If you want more information and instructions on how to set up TabJolt, you can go here
Command line tools
Tableau Server comes with very useful command line tools. In both you can use commands to conduct various administrative tasks. The feature set is split based on what you want to do. Tabadmin is always installed on the Tableau Server machine whereas tabcmd can be installed on or off the Tableau Server.
To run tabadmin you need to navigate to the /bin directory where Tableau Server is installed. Tabadmin useful for running restarts, cleanups and backups. You are also able to access detailed status information about tableau server components. For a list of commands, go here.
Tabcmd can be installed anywhere as long as it has access to the server. With tabcmd you are able to manage users, content and even publish workbook. The full list of commands are here.
Where both tools are at their most powerful would be when you are able to automate tasks using scripts. Being able to have a set of "mini-scripts" to conduct mundane tasks can be time-saving and very useful.
Nowadays a lot of people wish to build their own tools around Tableau Server to better manage their servers and processes. This can be done using Tableau's REST API. Using the Tableau Server REST API, you can manage and change Tableau Server resources programmatically, via HTTP.
The API covers a lot of the functionality of tabcmd and some of tabadmin which means you are not limited to executing batch files on Windows. A list of commands you can run using the Tableau Server REST API are here.
That does it for my getting started guide. If you have any feedback or issues, feel free to comment or contact me.