We have the performance issue too. We are using Windows Server 2008 R2 Enterprise SP1
Intel Xeon CPU X5650 2.67Ghz 2 processors. 8GB Ram.
We had Tableau Consultant on call last Friday for four hours & we tested few methods.
a) Run Tableau Desktop on the Tableau Server, connect to
the published datasource and run the dashboard - Elapsed Time: ~15 secs
b) Run Tableau Desktop on the Tableau Server, create a
local copy of the datasource (same as above), replace datasource to use local
copy and run the dashboard - Elapsed Time: ~1 sec
c) Publish the above workbook as a packaged workbook
(i.e. with local copy of datasource packaged inside) to the Tableau Server in
order to avoid using the data server and run the workbook from the browser: -
Elapsed Time: ~8 secs
The database query only took 0.45 sec but using the server on tableau portal taking 15 sec. The issue is something to do with the Tableau server web services. I have a case# with Tableau & waiting to hear from them. I sent all the logs for their review.
We are on Version 8.03.
Please keep us updated.
Also, I think 8GB RAM isn't enough. Get at least 32GB.
Did you configure the server? I think when you do an install it sets most of the settings as 1, you should adjust vizqls, application processes, etc. to the correct values.
So you should be rocking 16 or 32 vizqls on your server settings.
I mention it because I had to work with my network team to fix this, because they just installed the software and thought it was ready to go, and I quickly experienced performance problems. Once optimized, it was as fast as desktop.
Thanks Russell - first I've heard of what you mention re: amending the #. Can you please explain a little? I have the same issues, with the same sort of hardware. I'd really appreciate it! For example are you referring to page 33 of the server admin guide to setting:
Still in the Tableau Server bin directory, enter the following command, where
the maximum number of process instances you want to allow:
tabadmin set service.max_procs number
tabadmin set service.max_procs 16 ?
what other settings like that are there? Is 16 what I should set it to?
ie - what are "the correct settings"? I'm at a loss!
1 of 1 people found this helpful
Hey Nick -
You do not want to run that many VizQL processes on your machine
The guidance that Russell (good name!) gave you is out of date and refers to legacy versions of Tableau Server. In general, you should increase the number of app server and vizql processes only when Tableau begins to slow because requests are queuing. Adding more of these processes allows Tableau to scale, but does not improve performance.
Think of a vizqlserver process as a school bus. Once you get on the bus (you start rendering a report), it'll take the same amount of time to get your destination regardless of whether there are 1 or 20 buses running on the route. It's useful to put MORE buses (vizqls) on the route if there are lots of people around so that no one is refused a ride when the bus stops. But that's it. More busses doesn't get a single report rendered more quickly.
Adding many vizqls can actually hurt performance. Why? Because we cache information on a per-vizql basis. If there are only 2-3 running, your chance for a cache hit go way up. If you are running 16-32, then you are artificially driving DOWN your cache hit ratio, therefore making Tableau Server do more work then it really needs to. You should add these processes one or two at a time (max), and then see what happens.
Here's the newest information on performance, it'll get you started. If you have lots of users hitting your server add one or maybe two processes - no more.
In general, I've found that 80-90% of the reports I get of slow Tableau Servers have to do with poorly authored reports (no offense intended).
Of this 80-90%, probably 70% exhibit one or both of the following problems:
- One or more of the sheets in the dashboard draws too many "marks" (circles, lines, cells in a table). While Desktop can handle drawing a couple hundred thousand cells in a "grid-like" chart, Tableau Server will suffer. If any of your sheets are drawing more than maybe ~30-40K marks, you're probably drawing too many (you can check in Desktop - check out the lower left-hand corner in the status bar). Use filters to limit how much stuff you're plotting. If you see any "pivot table" like reports with 30 columns by hundreds of rows - that's your problem
- Over-use of the "Relevant Value" quick filter. Relevant value quick filters are nice because they give you a "cascading filter" effect, but they don't come free. If you use more than 2-3 of them, you're firing lots of extra queries. Use "All Values" filters instead, even though they're not as fun.
You might also want to make sure your Tableau Server is getting enough disk throughput. Especially if you are running it on a Virtual Machine. It is not uncommon for IT to install the VM on slow, shared storage - so when Tableau needs the disk, it is very slow to respond - making us slow, like it would make any other server application (SQL Server, Oracle, whatever) slow.
Hope this helps!
Hi Nick and everyone,
In addition to the v7 admin guide, the links below point you to the online documentation that walks you through the various ways you can improve tableau server deployment along with recommendations and best practices for tuning your deployment.
Hope these help.
Sorry for the out dated links. I guess the main point I was trying to make was if the workbooks are fine, you'll want to make sure the server is configured correctly and reference Tableau's guides (also make sure the OS is correctly setup, like not running anti-virus in the middle of the day). As Russell C. said, I would agree, most of the time its the workbooks vs. the server.
What about archiving the logs? I also implemented backups and archive the logs, figuring like SQL, as logs grow performance takes a hit. Might be worth thinking about, I didn't see any mention in the above links about it, I'm not sure how important it is.
Tableau people: Anyway you can move the version 8.0 guide up in the search results on the website?
Russell C., excellent tips! I did not know about the Relevant Filters bit I like those but now I'll try to be more aware when my users come to me about poor performance.
These tid-bits need to be in the documentation.
Thanks very much everyone for your great responses and very much needed help!
I am just rolling out Tableau server - and yes I have to agree with you that programming is the biggest factor in performance (I plead guilty)!! However, in my environment in rolling out Tab Server I know only one thing - my database is going to have millions of rows. I am assuming that the default install of 8.0 will suffice - I'm hoping - but I will review the documentation you provided.
Yeah, as long as your get decent response times from your database (which is where things typically are the slowest) or use “our” in-memory engine (extracts) things tend to go pretty well assuming you have a report without any major performance-killing authoring issues.
Has Tableau resolved your case ? If yes, can you share the solution. If not, can you share the case# with us ? We are experiencing similar issue with published datasource and hence asking for more information.
Tableau mentioned that they have got temporary file limitations using data server published data sources.
As a workaround, we were asked not to use the data server published file & use the extracts instead.
It helps a little bit, but since you are not using the data server, you bound to have these below issue
- If multiple dashboards uses a single data source, you will have multiple copies of extracts sits in your server & the file size multiples & so do the backup file size
I was told the 8.1 fixes and performance is improved in their new release.
We haven’t tested the new version yet.
No, For us it worked in version 8.0.3 by entering the value in the filter & the scroll bar worn't work better.
With version 8.1.3 , the scroll bar works on filters and entering the value in the filter for selection won't work.