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 -

       

      Year

      Country

      Type

      Value

       

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

       

      Country

      Population

      Region

       

      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,

       

      Mark