3 Replies Latest reply on Dec 11, 2012 5:01 AM by Tamas Foldi

    Speed and source data - better to de-normalise outside Tableau or JOIN in Tableau?

    Mark Haller

      Hope someone can help with a very simple question of which I'm not sure of the answer.  I'm using Tableau Public Premium and extracted data, but this could also apply to Tableau Server.


      Got a source MYDATA table in MySQL with 100,000 rows -







      Got a second MYCOUNTRIES table keyed on Country with 150 rows -






      I am creating filters / quick filters for the MYDATA table based on population and region - so there's a JOIN between the two tables.


      Question - Am I better to de-normalise/flatten the data before it comes into Tableau?  So I've got one table - Year, Country, Type, Value, Population, Region


      Or is better to just JOIN in Tableau?


      I can see the advantage of the flattening the data before being in Tableau is there's no calculations to be done by Tableau.

      I can see the advantage of JOINing in Tableau is that MUCH less data is being transferred/stored in the Extract.


      I cannot work out where the JOIN takes place in relation to rendering the Dashboard on a user's screen - has it already happened and stored in the Extract?  Or is on demand?  Or something else?


      It seems like such a simple question for any other system I'd know the answer, but I just don't know the architecture of Tableau sufficiently well yet.


      Thanks in advance,