In order to be sure you're not getting anything from cache, try adding "?:refresh=yes". A twbx and tde should be about equivalent on the server because the data extract ends up living decoupled (in the dataengine folder on the server) from the twb (which lives within the PG repository). The only difference I believe is that with the tde, Tableau has to connect through the dataserver proxy as a pointer in order to retrieve the needed contents.
Great tip. Yes, the refresh parameter was used for each test.
Agreed, we were expecting similar results.
what does your server environment footprint look like? By its very nature, its shared so it could get maxed out which could cause latency, or if it leaves in a far away data center or runs on VM or the disk is fragmented or any multitude of other factors could have an adverse affect.
Environment is QA, very little usage one user at a time.
8 Cores, 64 GB of memory running 8.2.6 64-bit.
We have been running perfmon statistics during each test, we haven't consumed over 20 GB of memory. And our Tableau memory usage has been very low (see attached image). We plan on executing a new performance/stress test this afternoon to see if the memory usage is any different.
Can you clarify the tde on server scenario? Is it a workbook just ocnnected to a tde file? or is it connected to a Published Data Source and using the data server process as well? I'm curious how the performance would very between these two scenarios.
Our test of Tableau Desktop was connecting to a deployed TDE on our Tableau Server. From my understanding the TDE was deployed, built and scheduled to be refreshed at some interval.
Can you provide additional detail around the published data source + data server process? Are you speaking of a live connection to our underlying Oracle database?
Our test of Tableau Server was taking that workbook that was connected to the deployed TDE and deploying it to Tableau Server, so our expectation is that it also using the TDE.
Here is the published data source process - again curious what the performance ramifications of doing it this way would be: Publishing Data Sources
Basically you connect to a live data source, make an extract and create your view then publish using the method above. Next you would then have to connect to a new data source from the menu (connect to tableau server), choose the one you just published using the method above and connect. Then right click on the data source and choose "replace data source" to make the new connection to the published source the connection which the data is using. Finally right click on the old data source (the original extract) and close it.
Now publish the workbook which is now using a published data source and see if things change.
One potential cause of poor performance may be related to the lack of temporary tables. Currently, the Data Server process in Tableau Server is unable to create temporary tables for complex queries generated from, for example, large filters or sets within the workbook.
To determine if this could be the issue, connect to Oracle directly from the workbook and generate the extract, then publish the workbook without publishing the data source. If performance is improved, then lack of temporary tables is likely the issue.
Fortunately, support for temporary tables in Data Server is being added in version 9.0
Hi Calvin, I passed your message onto a few of my colleagues:
Question #1: Don't temporary tables come into play when connecting to a live database only?
I would like clarification on how this approach with a local TDE would affect the creation of temporary objects when using extracts. Is Calvin talking about publishing the workbook with Include External Files set?
I have seen the use of context filters yield different performance between Server and Desktop, and have wondered about that, so Calvin could be onto something.
If the TDE is hosted on a network share and specified using a UNC path, I believe the workbook could connect to it (as it could with a flat file, for example).
Thank you all for taking time out to assist.
Temporary tables can be utilized with any type of data source that is not using Data Server (i.e. not a published data source), including TDEs.
I can understand the reasons for publishing the workbook connecting to the TDE separately, as you describe. I was referring to publishing the workbook with the extract included within the workbook. However, I would expect similar results if connecting to a separate TDE as long as it is on a network location that has a low network latency relative to the Tableau Server machine(s) (assuming Include External Files is not enabled).
Hi Nick - I am struggling with a similar problem. Did you get any answers or resolution to your question.
Would you have any reference material or documents or case studies that can help me!
I am facing the same issue. I have published my Tableau workbook as a TWBX file to the server. I am wondering whether a TWB & published TDE combination will perform faster. I have my dashboards embedded in a web page and the initial load time is more than the expected limit (Right now its more than 10 seconds. Expected time- Below 5 Seconds). It works fine after a I have cached the page. I am wondering whether the TWBX file (size of 50 MB) takes more time to load but less time to filter afterwards; compared to a TWB & TDE combination which would be faster to load initially, even if the filtering requires bit more time (as it connects to a TDE).
Please let me know your thoughts & suggestions. Any suggestion is appreciated and would be of great help to me. Thanks!