4 Replies Latest reply on Mar 6, 2015 10:13 AM by Jeff Strauss

    Whats really holding Tableau speed back

    Sean Arnold

      First of all I love Tableau. I just wanted to make that clear.

       

      Given the practice of making it easier for Tableau to render dashboards (reduce marks, no/low amount of relevant value filters etc etc), my question is whats actually holding Tableau performance back?

       

      I have a test server and a Live server. I am lucky enough to have the best 8 core box that money can buy (my infrastructure managers words), a decent SAN and a relatively large amount of RAM (384GB) at my disposal, my test box is a VM and in theory matches the spec of the medium deployment on Tableau's website.

       

      Given the above specs I created a dashboard that was fairly complex breaking a lot of dashboard rules (low level grain data displayed over 4 maps on a single dashboard and a fair few filters), but I needed to to demo my point. Ignoring how fast it was in desktop, there is hardly anything between the two servers despite having faster everything.

       

      Note: I am referring to a complete cache bypass load time, my data source is extract based and both servers have been optimized by a Tableau consultant in terms of setup.

       

      I'm not expecting a 10 x faster server = 10 x faster Viz render times but I do expect Tableau to be greedy and use what it has available. Watching perfmon the Live box doesn't even move resource wise.

       

      Digging deeper when doing performance recordings of each server you can see that the Live box is a little faster when moving through the steps to render the complete dashboard. But in the ~4 sec render time, there was ~2 sec of stuff that I could reduce by various methods, but also ~ 2 sec of blank space between various bars in the performance recording. A Tableau consultant told me this was Tableau internal stuff that I couldn't influence hence it isn't shown in the view.

       

      What is this Tableau internal stuff and why isn't it faster on a faster box?

        • 1. Re: Whats really holding Tableau speed back
          Dan Cory

          It's hard to say what the "internal stuff" is without looking at the performance recording. It sounds like you probably have 2s of query time and 2s to read the workbook, layout the view, send the view to the client, etc. This is not uncommon for a "fairly complex" dashboard.

           

          Generally server tries to scale to more simultaneous users, not necessarily run individual views faster. So your live server may be able to handle 10x traffic of your test server, but not run a single view by itself 10x faster.

           

          We are still always trying to make individual views faster. If you can share yours, please send it to me in email.

           

          Thanks,

          Dan

          • 2. Re: Whats really holding Tableau speed back
            Jeff Strauss

            I too have the same problem with white space in my performance recording graph, it's quite dubious to say that it's "Tableau internal stuff".

            • 3. Re: Whats really holding Tableau speed back
              Dan Cory

              Jeffrey - the performance recording includes more detail about what happens in the "white spaces". If you can send it to me or to support, we will take a look and see what is missing. This also gives us ideas about what to add to the performance recording workbook in the future.

               

              Thanks,

              Dan

              • 4. Re: Whats really holding Tableau speed back
                Jeff Strauss

                Tip for the day:

                 

                I found something quite interesting about the whitespace insight, not much of it can be influenced, though it does lend itself to possible design improvements.  Perhaps its new within 8.3, on server the perf recording by default still shows white spaces.  If you want more insights about what's going on, then download the perf recording, and unexclude other and add in the index and event name and poof all the detail appears.