Tableau Server is a solution for enterprises, and this means one of the most crucial features is the potential for massive scalability. To serve as an example, we deployed one of the largest instances of Tableau Server out there—Tableau Public.
Tableau Public allows us to test the product in a production mission-critical environment, and also to understand, find and fix issues related to scalability before our customers ever encounter them.
This paper will tell you how we did that, why we did that, and show you just how powerful a product Tableau Server is.
We've also pulled out the first several pages of the whitepaper for you to read. Download the PDF on the right to read the rest.
In November 2013, we ran scalability tests to understand the scalability of Tableau 8.1 to better understand the impact of enhancements to scalability implemented in this release. Specifically, we wanted to better understand how Tableau Server 8.1 would scale across a variety of configurations and workloads.
There are a number of factors that can affect the scalability of a Tableau Server deployment including workbook complexity, data volumes, hardware, and browser and network settings.
We tried to simulate real-world usage based on what we typically see at customers. We defined a workload of “read-only” users and “interactor” users. Read-only users simply view the report while interactor users perform a selection, filter the view, change tabs and perform similar interactions with the report. Then— under increasing user loads and various workload mix ratios of read-only and interactor users—we studied the system behavior at saturation (maximum throughput).
The results demonstrate that Tableau Server 8.1 scales nearly linearly. Based on our testing and customer usage estimates, we are assuming that the number of concurrent users on the system is 10%. With this in mind, we demonstrated that Tableau Server scales from 1900 total users on a node cluster of 16 cores to 5540 total users on a 4-node cluster across 64 cores. This is for a typical workload mix where we see 40% of users interacting with the reports and the other 60% viewing it.
Note: When running in a distributed environment, one physical machine is designated the primary server and the others are designated as worker servers. We also tested a more active workload. In a scenario in which 100% of users are interacting with the report— again using the concurrency rate of 10%—Tableau Server can support from 1190 total users with a single primary with 16 cores up to a total of 3470 total users on cluster of primary plus 3-node worker cluster with 64 cores.
This white paper explains the scalability tests, methodology and test results.
We will also provide some real world scale examples of Tableau Server, describe Tableau’s approach to performance and scalability, set some baselines to help you understand the various elements of scalability testing, review the results of the experiments, and finally provide guidance on how you could apply these outcomes to your environment.
Scaling from User to Enterprise
At Tableau, we know that data visualization significantly improves the ability to understand information.
We wanted a solution that would improve upon the standard “analyze data in text form and then create visualizations of the findings” process.
So we invented a technology that made visualization part of the analysis journey, rather than a final step. This invention, called VizQL, quickly caught users’ attention. As these users saw how easy it was to create their own data visualizations—and others saw how much value the visualizations provided to the business—enterprise organizations quickly gained interest.
In November 2013, we launched version 8.1 of our software. Many of the enhancements we made were in response to the growing demand for Tableau products capable of supporting large and enterprise-wide deployments.
As more users have discovered the power of visualization, self-service analysis and reporting, IT finds itself being asked to configure and manage Tableau software and servers to support a larger number of users, groups and interactions.
It’s quite natural, then, that CIOs, IT managers and IT architects are deeply interested in the scalability of Tableau Server. They want to be assured that Tableau can support an enterprise deployment. And they want to understand what to expect in terms of performance in order to help guide architecture decisions.
Eating Our Own Dog Food: the Tableau Public Story
As we improved the features of Tableau to support very large groups of users, we needed a way to test and refine these features. We wanted the testing to be as true-to-life as possible, replicating even the toughest business conditions.
As part of the product release and a core part of our engineering culture of using our own products, we rolled the latest Tableau Server pre-release software to Tableau Public. This allowed us to deploy our products at large scale in a production mission critical environment and also to understand, find and fix issues related to scalability before our customers encountered them.
Today, Tableau Server is running at high scale in our own data centers as part of the Tableau Public solution.
For those unfamiliar with the product, Tableau Public is a free service that lets anyone publish interactive data to the web. Once the data is uploaded, anyone can interact with the data, download it, or create their own visualizations with it—no programming skills needed. Tableau Public has served 200 million distinct impressions and continues to grow. We recorded an all peak of 94,000 views in one hour. This traffic is powered by Tableau Server leveraging its scale-up and scale-out architecture.
The Tableau Public configuration is similar to a corporate deployment of Tableau Server with a few exceptions:
While the core components of Tableau Public are the same as Tableau Server, Tableau Public users are limited to a fixed extract size. Tableau Public users also do not face data security issues, as all data is public.But Tableau Public runs tens of thousands of queries every single day. And while data sizes are relatively small, they have a high degree of variability. In addition to Tableau Public, Tableau internally deploys and uses Tableau Server across the enterprise to support sales, engineering, support, operations, and other key business functions. Using our own products extensively is a core part of Tableau culture.