Sigma utilizes the native query result caching features of Snowflake and BigQuery to improve dashboard loading times.
Reusable Query Results
Snowflake and BigQuery remember the results of every query they run for up to 24 hours after the query completes. When anyone in your organization views a dashboard, Sigma can reuse the remembered results to immediately display data.
If the remembered results are more than 5 minutes old, Sigma will automatically rerun the queries to show you fresh data. We’ll show you the cached results while the new data is loading. You can see when a dashboard tile is loading new results by the thin blue loading bar across the top of the individual tiles.
You can see how old the displayed data is by checking the bottom left of the dashboard footer. You can also go to the footer to refresh your whole dashboard at any time.
When you change the filters or parameters on a dashboard, Sigma will automatically refresh all of the data on the dashboard.
While editing a dashboard, Sigma does not re-use query results.
Likewise, scheduled dashboard refresh always issues new queries to the warehouse.
Differences Based on Your Database
For Snowflake, the cache is managed and stored in your Snowflake data warehouse. Sigma’s dashboard will reference Snowflake’s persisted query results rather than running a new query. Sigma does not store your data, we simply query the persisted results.
With BigQuery, the cache is stored in your BigQuery data warehouse. We reference BigQuery’s native query results cache. Sigma does not store your data, we query the database as normal.
Redshift & PostGres
Redshift and PostGres do not remember query results. New queries are issued to the database on each open and refresh. You will see an empty loading state while your data loads.