Result caching in Snowflake stores the results of a query so that if the same query is run again, Snowflake can return the stored results instantly without re-executing the query.
Click to reveal answer
beginner
How long does Snowflake keep query results in the result cache?
Snowflake keeps query results in the result cache for 24 hours, as long as the underlying data has not changed.
Click to reveal answer
intermediate
What conditions must be met for Snowflake to use the result cache for a query?
The query text must be exactly the same, the underlying data must not have changed, and the user must have the same access rights.
Click to reveal answer
beginner
What is the benefit of result caching in Snowflake?
It reduces query execution time and saves compute resources by returning stored results instantly instead of running the query again.
Click to reveal answer
intermediate
Can result caching be disabled in Snowflake?
Yes, result caching can be disabled by setting the parameter USE_CACHED_RESULT to FALSE in the query.
Click to reveal answer
How long does Snowflake keep query results in the result cache?
A7 days
B1 hour
C24 hours
DUntil the warehouse is restarted
✗ Incorrect
Snowflake keeps query results in the result cache for 24 hours if the underlying data remains unchanged.
Which of the following is NOT a requirement for Snowflake to use the result cache?
AUnderlying data must not have changed
BWarehouse must be running on the same server
CUser must have the same access rights
DQuery text must be exactly the same
✗ Incorrect
Snowflake's result cache is independent of the warehouse server location.
What happens if the underlying data changes after a query is cached?
ASnowflake ignores the cache and reruns the query
BSnowflake returns the cached result anyway
CSnowflake deletes the cache but returns old results
DSnowflake pauses the query
✗ Incorrect
If data changes, Snowflake invalidates the cache and reruns the query to get fresh results.
How can you disable result caching for a specific query in Snowflake?
ASet USE_CACHED_RESULT = FALSE
BSet CACHE_ENABLED = FALSE
CUse NO_CACHE keyword
DResult caching cannot be disabled
✗ Incorrect
You can disable result caching by setting USE_CACHED_RESULT = FALSE in the query.
What is the main benefit of using result caching in Snowflake?
AAutomatically backs up data
BIncreases storage space
CAllows multiple users to edit data simultaneously
DImproves query speed and saves compute resources
✗ Incorrect
Result caching speeds up queries and reduces compute costs by reusing previous results.
Explain how Snowflake's result caching works and when it is used.
Think about what must stay the same for cache to be used.
You got /3 concepts.
Describe how to disable result caching for a query in Snowflake and why you might want to do that.
Consider scenarios needing fresh data always.
You got /3 concepts.
Practice
(1/5)
1. What does Snowflake's result caching do when you run the same query multiple times within 24 hours?
easy
A. Deletes the previous result and returns an error
B. Runs the query again and stores a new result
C. Requires manual cache refresh before returning results
D. Returns the cached result instantly without rerunning the query
Solution
Step 1: Understand Snowflake's caching behavior
Snowflake stores query results for 24 hours to speed up repeated queries.
Step 2: Identify the effect of caching on repeated queries
When the same query runs again within 24 hours, Snowflake returns the cached result instantly without rerunning the query.
Final Answer:
Returns the cached result instantly without rerunning the query -> Option D
Quick Check:
Result caching = instant cached return [OK]
Hint: Same query within 24h returns cached result instantly [OK]
Common Mistakes:
Thinking query always reruns
Assuming cache expires immediately
Believing manual refresh is needed
2. Which of the following is the correct way to disable result caching for a single query in Snowflake?
easy
A. ALTER SESSION SET DISABLE_CACHE = TRUE;
B. ALTER SESSION SET USE_CACHED_RESULT = FALSE;
C. ALTER SESSION SET NO_CACHE_RESULT = TRUE;
D. ALTER SESSION SET SKIP_CACHE = TRUE;
Solution
Step 1: Recall how to disable result caching
Snowflake uses ALTER SESSION SET USE_CACHED_RESULT = FALSE to disable caching for the session.
Step 2: Match the correct syntax
The correct syntax is ALTER SESSION SET USE_CACHED_RESULT = FALSE;
Final Answer:
ALTER SESSION SET USE_CACHED_RESULT = FALSE; -> Option B
Hint: Use ALTER SESSION SET USE_CACHED_RESULT = FALSE to disable caching [OK]
Common Mistakes:
Using wrong parameter names
Incorrect ALTER SESSION syntax
Confusing with other cache parameters
3. Consider this sequence of queries run in Snowflake: SELECT COUNT(*) FROM sales; Immediately followed by: SELECT COUNT(*) FROM sales; What will happen on the second query?
medium
A. Snowflake returns the cached result from the first query
B. Snowflake returns partial results from cache
C. Snowflake returns an error about duplicate queries
D. Snowflake reruns the query and returns fresh results
Solution
Step 1: Identify caching behavior for repeated queries
Snowflake caches query results for 24 hours and returns cached results if the same query runs again.
Step 2: Apply to the given queries
The second SELECT COUNT(*) query is identical and runs immediately, so Snowflake returns the cached result.
Final Answer:
Snowflake returns the cached result from the first query -> Option A
Quick Check:
Repeated query = cached result return [OK]
Hint: Repeated query returns cached result instantly [OK]
Common Mistakes:
Assuming query always reruns
Expecting partial or error results
Confusing cache with data freshness
4. You executed this command in Snowflake: ALTER SESSION SET USE_CACHED_RESUTL = FALSE; But you notice subsequent queries still return cached results. What is the likely cause?
medium
A. Result caching cannot be disabled in Snowflake
B. The query is too complex to cache
C. The USE_CACHED_RESULT parameter is misspelled or incorrect
D. The cache expired before the query ran
Solution
Step 1: Verify the USE_CACHED_RESULT parameter usage
The parameter must be spelled exactly USE_CACHED_RESULT and set to FALSE to disable caching.
Step 2: Identify why caching still happens
If caching still occurs, the parameter might be misspelled or incorrectly specified.
Final Answer:
The USE_CACHED_RESULT parameter is misspelled or incorrect -> Option C
Quick Check:
Correct parameter spelling and value disables cache [OK]
Hint: Check parameter spelling and syntax to disable caching [OK]
Common Mistakes:
Assuming caching can't be disabled
Misspelling the parameter name
Ignoring exact parameter syntax
5. You want to ensure a query always returns fresh data and never uses cached results in Snowflake. Which approach correctly achieves this while minimizing cost?
hard
A. Execute ALTER SESSION SET USE_CACHED_RESULT = FALSE; before the query to disable caching
B. Manually clear the entire result cache before running the query
C. Run the query multiple times to refresh the cache
D. Use a different warehouse to bypass caching
Solution
Step 1: Identify how to disable result caching per session
Snowflake allows disabling result caching using ALTER SESSION SET USE_CACHED_RESULT = FALSE before the query.
Step 2: Evaluate other options for cost and effectiveness
Manually clearing cache or switching warehouses is inefficient and costly; running multiple times does not guarantee fresh data.
Final Answer:
Execute ALTER SESSION SET USE_CACHED_RESULT = FALSE; before the query to disable caching -> Option A
Quick Check:
Use USE_CACHED_RESULT = FALSE for fresh data [OK]
Hint: Use ALTER SESSION SET USE_CACHED_RESULT = FALSE for fresh data without extra cost [OK]
Common Mistakes:
Trying to clear cache manually
Switching warehouses unnecessarily
Relying on repeated runs to refresh data
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.