Thursday, July 9, 2015

Speeding up Design with Large Data Sets

The Problem

When dealing with large data sets in a .tde file, the responsiveness of Tableau is reduced to the minimum. The design process may become intolerable. Every bit of change or drag or drop takes long time for Tableau to calculate and to render. The viz designer (aka me) has to wait and wait.

All I wanted is to get the logic right first. I need to move pills around freely and create a few calculated fields just for trying. I need quick response from Tableau. I need my design process to be fluent. I don't mind the data sets being small.

Here comes a simple technique for speeding up significantly the responsiveness of Tableau Desktop, hence increasing the productivity, and most importantly, reducing frustrations.

1.Add an extract filter (or data source filter) over date dimension 
Most large data sets are transaction records and thus have a date dimension. Or you can select any dimension that makes sense.


2.Select a reduced date range
As long as the reduced data set is representative, we are ok. The relative date filter can be set to last 2 years or last 6 months etc.

3.Extract data
Now you will have a smaller data set to deal with. The responsiveness of your Tableau should have improved significantly. If not, go to step 2 and select a even smaller date range.

After you are done with design, just remove the extract filter.

3 comments:

  1. Alex, Great post! I've used this technique before and even recommend it. However, it has occasionally come back to bite me in that what I thought was a responsive dashboard that would please the end-user turns out to be rather slow and sluggish when I remove the filter and go back to the full data set. Have you had any issues with that? Any suggestions?

    ReplyDelete
    Replies
    1. Joshua, this is only for solving the responsiveness issue during the design. If it's too slow, I may have forgot my ideas after Tableau gets back to me.

      Regarding the performance of an end product, there are other considerations involved. Minimizing the run time calculation such as blending and aggregations (have them done prior to Tableau) is the key for a fast visualization. That's another issue.

      Delete
  2. A few days ago, I found data discrepancy in my dashboard. The culprit was the data source filter that I forgot to remove after the design is done! Hope you don't do the same.

    ReplyDelete