Implementing Dashboard Caching

To access caching, click on the down arrow in the upper left corner of the dashboard. Then, toggle “Enable caching”. At this point, there will be an option to set the Timeout period via a dropdown menu. The caching feature is, by default, available for all dashboards, but will need to be manually turned on. Please reach out to support if you would like to make the caching feature not available for all dashboards.

How Dashboard Caching Works In Practice

Caching is turned on at the dashboard level, but what ends up being cached is the query and the corresponding result. These get cached into Explo’s caching layer, which is either Redis or Apache Ignite, depending on which data connector your workspace uses.

If that same exact query is then executed again within the set timeout period, instead of executing the query in your database, the data will be fetched from the cache. This should result in much faster data loads. You may configure the Timeout to be 15 minutes, 30 minutes, 1 hour, 2 hours, 4 hours, 6 hours, 12 hours, or 24 hours.

Caching Applies to Exact Query Matches

Caching applies to all queries within the dashboard, including queries for filters. Only exact match queries will trigger pulling from the cached results.

For example, if the following query has been cached:

Query 1:
SELECT * FROM DB WHERE DATE > "2022-01-01"

The following query would trigger a call to the database instead of pulling from the cache:

Query 2:
SELECT * FROM DB WHERE DATE > "2022-09-09"

Even though Query 2 is a subset of the results from Query 1, only exact matches will trigger pulling from the cached results.

Clearing the cache

The cache will be automatically cleared on the timeout period set or manually by the user, whichever comes first.

Here is an example of how this works:

  • If the timeout is set to 24 hours, the cache will clear everyday at midnight UTC
  • If the timeout is set to every 6 hours, it will clear at midnight, 6am, 12pm, and 6pm UTC

Manually Clearing the Cache

Explo allows you to manually clear and refresh the cache in two ways, as shown below.

Dashboard Editor

There is a button in the top right corner of the dashboard editor that requests new data for your data panels. Note that, because your in-app and embedded dashboards share the same cache, refreshing the data via this button will refresh the data for your users as well.

Embedded Refresh Button

Explo allows you to add a refresh button as a dashboard element that will similarly refresh the data on the dashboard. Note that embedding this button will allow your users to refresh the data at any time for all users.

Caching Security

To learn more about the security details of caching, please refer to this page.