9 Replies Latest reply on Oct 25, 2017 10:24 AM by Andrew Macey Branched to a new discussion.

    Are views always cached when using extracts?

    Charles Ayotte-Trépanier

      Hi,

       

      I've been going through different discussion on this community as well as many interesting articles by the likes of kb.tableau and tableaulove but I still fail to understand how cache works.

       

      On our environment, we use Live Connections as well as Extracts. If a view if built from a live connection, I want it to be cached only a short amount of time. If a view is built from extracts, I want it to be cached until the extract refreshes (there's no point re-querying the data is it hasn't changed.) I always want to show the most recent data but that doesn't require a refresh if my extracts have not changed.

       

      So here's my question:

       

      Is there a way I can keep my live connection without much caching, while caching the views using extracts for as long as the extracts do not change? Does it even make sense to talk about caching when using extracts? If so, is the caching 'automatic' (cached until the extracts is refreshed), or also controlled by the 'Data Connections' configuration tab?

       

      Thanks!

        • 1. Re: Are views always cached when using extracts?
          Russell Christopher

          Short answer?

           

          No. You can't tell one data source (SQL Server, Oracle, whatever) to cache one way, and a different data source (extracts) to cache another.

          1 of 1 people found this helpful
          • 2. Re: Are views always cached when using extracts?
            Charles Ayotte-Trépanier

            Thanks, that's very clear!

             

            Just to make sure I'm understanding this correclly:

             

            Let's say I use 'refresh less often'.

            Then, from what I understand, views using extracts will still be refreshed whenever one of the underlying extract has been modified/refreshed. Basically, Anything using extracts will always be showing the most up-to-date data. And as long as the extracts don't change, the view will be cached.

            However, my live connections will get cached and never (or rarely) refreshed. My live connection is then turned into a snapshot of what my data was when the caching was done.

             

            On the other hand, let's say I use 'refresh more often'

            My live connections are now live again. However, if I'm using extracts, my views keep refreshing even though the extracts haven't changed.

             

            If my objective is to have my reports loading quickly and showing the most up-to-date data, would it be fair to say that the better solution would be to use the 'refresh less often' option, and ONLY use extracts (no live connections)?

             

            Thanks a lot for your help!

            • 3. Re: Are views always cached when using extracts?
              Toby Erkson

              Charles Ayotte-Trépanier wrote:

               

              ...

              If my objective is to have my reports loading quickly and showing the most up-to-date data, would it be fair to say that the better solution would be to use the 'refresh less often' option, and ONLY use extracts (no live connections)?

              Well, how often is the data source updated? 

              • 4. Re: Are views always cached when using extracts?
                Charles Ayotte-Trépanier

                Hi Toby,

                 

                Extracts/live connections on Tableau Server come from multiple thousands data sources, over 20 connection types and many more servers. Some data sources are live, some data sources update daily. And there's everything in between.

                 

                As extracts are way more common then live connections, I'm wondering if I should just use the setting 'refresh less often' and discourage the use of live connections (unless they are embedded views with the url parameter 'refresh').

                 

                Thanks!

                • 5. Re: Are views always cached when using extracts?
                  Toby Erkson

                  Your data source is what feeds the live connection or the extract, that's what I'm asking about, the source of your data.  Are your data sources being constantly updated every second or batch-processed once at night or something in-between?

                  • 6. Re: Are views always cached when using extracts?
                    Charles Ayotte-Trépanier

                    I'm really sorry, let me try to better explain the situation:

                     

                    Your question seems to assume that all of the data sources to which Tableau users connect have the same refresh rate. However, they unfortunately don't.

                     

                    Some source are almost real-time, some sources refresh daily, and there's everything in between.

                    • 7. Re: Are views always cached when using extracts?
                      Toby Erkson

                      Okay, that helps.

                      So, determining what to use, Live or Extract, will depend on how fresh your users need the data to be based upon how often the data source is updated and how often they view the data (report) and just how quickly it is needed (i.e. can they wait 2 minutes for a live update?).  This is a call that you or the report author need to make.  This is why it's difficult to answer with any degree of correctness

                       

                      Charles Ayotte-Trépanier wrote:

                       

                      ...

                      If my objective is to have my reports loading quickly and showing the most up-to-date data, would it be fair to say that the better solution would be to use the 'refresh less often' option, and ONLY use extracts (no live connections)?

                      Assuming your Tableau Server has the horsepower, very short answer is "Yes".  Again, highly dependent on how your Server is set up, network performance, and report construction, as well as what your customers define "most up-to-date" data.

                      1 of 1 people found this helpful
                      • 8. Re: Are views always cached when using extracts?
                        Charles Ayotte-Trépanier

                        Makes sense, thanks!

                         

                        We are a big org and Tableau is used for all kind of purposes. It's impossible to say how Tableau is being used/what are the needs. We have a bit of everything.

                         

                        So I am right when say that the cache for a view will be refreshed if any of the underlying extracts was modified? In that case, it does seem like going with extracts only and using the 'refresh less often' option is what I need (and maybe additional workers )

                         

                        Thanks!

                        • 9. Re: Are views always cached when using extracts?
                          Andrew Macey

                          If your audience is Tableau savvy, then I usually advise publishers to include "Data Update Time" (and mention if the view is extract based). It removes end-user doubt about the freshness of the data and gives a clue as to whether clicking refresh will be of any benefit or just add load to the server. I've set my server cache to ~60 minutes.