On many occasions I have found Tableau data extracts are slow to refresh on the Tableau Server when pulling from SQL (and I’m sure this happens with all data connections). I always used to put this down to the slow execution of the query, which could definitely be a cause as if it’s slow to run on the SQL Server it will be slow to run when refreshing an extract. It also appears that Tableau can be the cause of the slow updating in some cirucmstances. I have just come across this write up on extract performance by one of the Tableau staff which they put on their forums. I think it is very useful so I’ve copied it into this article.
Basically it advises what to check to see what the cause is of the slow updating of extracts and advises what to do if the blame is on the Tableau side. Read more…
I’ve just had a frustrating hour trying to work out why my attempts to blend data between an Excel file and a data extract wasn’t working. I was trying to blend on 2 fields – a text field called Metric, with the same field name in both datasets, and a date field called Date in the spreadsheet and InvoiceDate in the extract.
Tableau was clever enough to join the Metric fields automatically but I had problems joining the Date fields. I thought it would be a simple telling Tableau to join where Date = InvoiceDate but unfortunately there were a few more steps involved. Read more…
My current employer is still using Tableau Server 6.1 – or 6.1.6 to be precise. I’ve been trying to work out how the extracts work when pulling from a SQL Server so the same extract can be shared by multiple dashboards. The reason for this is that some of my extracts take a long time to update which is not ideal when the same extract is used in multiple dashboards and instead of refreshing it multiple times for each dashboard it would be more efficient to update just once and all dashboards using it will be updated together.
What I was wondering was if when you connect to a data extract in Tableau is whether the published extract is updated when any dashboard based on this extract is updated. It seems this isn’t the case. Once the extract is published it remains as it was a publication time for all time I believe. It appears that when you connect to that extract and publish the workbook Tableau actually duplicates the extract and updates this duplicate whenever the dashboard is updated. In other words the extract published individually to the server doesn’t alter but the duplicate Tableau made embedded in the dashboard does update. Read more…
Perhaps the title of this post is a little extreme but I have spent some time trying to speed up the refreshing of my Tableau extracts recently and began to use incremental extract refreshes where I thought it was appropriate – for example with order data just adding yesterdays orders each day.
On closer inspection I noticed that with the data warehouse I’m using the way it’s designed is to run updates on existing records rather than inserting a new record to reflect a change in the underlying data. I was reading an article on the Tableau site about Optimising Incremental Refreshes and noticed a warning towards the end of the article saying “Updates to existing data and deletions are only included in full refreshes”
In other words if you’re using a data source where the data can alter historically and your Tableau report needs to match these changes to the underlying data then a Full Refresh must be used. The incremental refresh would miss the alterations and only insert new records.
Make sure the data source is checked to be sure that none of the data can change historically OR if it can change historically check these changes don’t have to be reflected in the reporting.
Note Tableau allows an extract to be refreshed both Incrementally and Fully so dependent on the requirements it could be possible to run daily incremental updates during the week and carry out full extracts on the weekend to capture historic changes, for example.