Report caching

Note: This feature is only available to customers on Enterprise-level plans.

You can improve report performance using a cache (a temporary store of data). We recommend that advanced users use caching with:

  • Complex reports where the underlying data may not change often

  • Reports that use large datasets

As you consider this feature, consider how you want to balance performance versus displaying the most up-to-date report information at all times. For example, if your report data is not updated frequently and you want the best possible performance, this feature would be beneficial.

Caching occurs by user, in order to maintain user permissions and security. Each user maintains their own cache state, meaning that caching is most useful when the same user pulls information multiple times within the cache window (for example within one day or one minute). The information can be reports within the Quickbase user interface or scripts and utilities via the Quickbase API.

You may want to inform your reports users about your implementation of this feature so they understand what data is shown and how the report performs.

Cache-eligible actions

Product area These can be cached These cannot be cached

Reports accessed through the Reports & Charts panel, specifically the initial loads of new table reports and new timeline reports

 

  • The initial loads of:

    • New table reports

    • New timeline report

      • Note: Cache is per page.

  • The table dashboard, when the table setting is used

  • Quick searches

  • Legacy-style table reports

  • Legacy charts

  • New-style charts

  • Legacy-style summary reports

  • Legacy calendars

  • Temporary reports

Dashboards

 

  • New table reports on new dashboards

  • Summary reports on new dashboards

  • New timeline reports on new dashboards

  • Any widgets on the old dashboard

  • Filters against a dashboard

  • Charts on new dashboards

Record pickers

 

  • Initial load of a record picker, on new forms when based on a report, or if the table setting is used

  • Searches within a record picker

  • Record pickers on forms used to edit a record

API calls

 

  • API_DoQuery with a qid

  • API_GenResultsTable with a qid

  • runReport

  • All other API calls

Setting the table default

Much like your web browser, your table can temporarily store data to improve performance. Setting the table default of caching allows Quickbase to make more requests cache eligible. To customize table caching options:

  1. Open your table. Click the settings icon , and click Advanced Settings. Choices include:

    • Cache certain reports and API calls on this table: Store this data to optimize performance

    • Clear after…: Clear this saved data at this interval

    • Clear after data in this table is modified: Remove this cache whenever any data in the table is changed

      See the following table for more details about these options.

  2. Click Save.

You can choose to use Clear after modifications and the time window together, or independently. Below are the possible combinations:

option description
Clear after {time} Eligible reports and API calls will be cached for the user until the time elapses, or a user manually refreshes the report (which restarts the cache window).
Clear after data in this table is modified Cache will live until the maximum cache time (see, Quickbase feature limits), or when data or schema on the table is modified. This option, when used alone, is best used for infrequently-modified tables.
Clear after {time} and Clear after data in this table is modified Cache will live until the maximum cache time, when data or schema on the table is modified or when the cache time elapses. This option provides the greatest possibility of frequent updates for the user, with the least performance benefit.

Caching at the report level

Much like your web browser, your report can temporarily store data to improve performance. To customize report caching options for your reports:

  1. Open your report. Click the settings icon , and click Advanced Settings. Under Options > Report Caching, choose one of the following:

    • Use table’s cache behavior: Follow the default caching behavior of the table.

    • Customize caching: Clear the cache after a certain time or when the table is changed.

    • Don’t cache: Do not temporarily store data to improve performance

  2. Click Save.

Report caching information

Quickbase can inform the user when a report is pulling information from cache, and allow the user to clear the cache automatically. Quick will inform the user of this in:

  • Reports accessed from the Reports & Charts panel

  • Record pickers

  • Dashboard widgets

Reports accessed from the Reports & Charts panel

Reports on a standalone report page accessed from the Reports & Charts panel show this button. Click it to refresh it or hover over it to view more information.

Note: Refreshing the report here will cause the cache to reset for any area of Quickbase that is based on this report, such as API calls or record pickers.

Record pickers

On the initial load of a record picker (not searches), the drop down menu shows the last time the report is updated.

Dashboard widgets

Within widgets on new dashboards, the expanded menu shows when the report was last updated.

API calls

On eligible API calls that are cached, the following header is returned, indicating the last updated time in ISO 8601.

qb-cache-expires: 2019-12-18T08:00:00Z
qb-cache-last-modified: 2019-12-18T08:00:00Z
qb-from-cache: true