Cyber Monday 2024! Hurry Up, Grab the Special Discount - Save 25% - Ends In 00:00:00 Coupon code: SAVE25
Welcome to Pass4Success

- Free Preparation Discussions

Snowflake Exam ARA-R01 Topic 2 Question 23 Discussion

Actual exam question for Snowflake's ARA-R01 exam
Question #: 23
Topic #: 2
[All ARA-R01 Questions]

A Developer is having a performance issue with a Snowflake query. The query receives up to 10 different values for one parameter and then performs an aggregation over the majority of a fact table. It then

joins against a smaller dimension table. This parameter value is selected by the different query users when they execute it during business hours. Both the fact and dimension tables are loaded with new data in an overnight import process.

On a Small or Medium-sized virtual warehouse, the query performs slowly. Performance is acceptable on a size Large or bigger warehouse. However, there is no budget to increase costs. The Developer

needs a recommendation that does not increase compute costs to run this query.

What should the Architect recommend?

Show Suggested Answer Hide Answer
Suggested Answer: C

Enabling the search optimization service on the table can improve the performance of queries that have selective filtering criteria, which seems to be the case here. This service optimizes the execution of queries by creating a persistent data structure called a search access path, which allows some micro-partitions to be skipped during the scanning process. This can significantly speed up query performance without increasing compute costs1.

Reference

* Snowflake Documentation on Search Optimization Service1.


Contribute your Thoughts:

Lizette
16 days ago
This question really separates the Snowflake architects from the Snowflake enthusiasts. Better bring your A-game!
upvoted 0 times
Shalon
2 days ago
A) Create a task that will run the 10 different variations of the query corresponding to the 10 different parameters before the users come in to work. The query results will then be cached and ready to respond quickly when the users re-issue the query.
upvoted 0 times
...
...
Leonora
19 days ago
I bet the developer is wishing they had a magic 'make-query-fast' button. Alas, there's no such thing in Snowflake!
upvoted 0 times
Steffanie
8 days ago
B) Create a task that will run the 10 different variations of the query corresponding to the 10 different parameters before the users come in to work. The task will be scheduled to align with the users' working hours in order to allow the warehouse cache to be used.
upvoted 0 times
...
Kris
11 days ago
A) Create a task that will run the 10 different variations of the query corresponding to the 10 different parameters before the users come in to work. The query results will then be cached and ready to respond quickly when the users re-issue the query.
upvoted 0 times
...
...
Roslyn
29 days ago
D is an interesting option, but it might be overkill for a small or medium-sized warehouse. Why not try the caching approach first?
upvoted 0 times
Thurman
3 days ago
B) Create a task that will run the 10 different variations of the query corresponding to the 10 different parameters before the users come in to work. The task will be scheduled to align with the users' working hours in order to allow the warehouse cache to be used.
upvoted 0 times
...
Noemi
9 days ago
A) Create a task that will run the 10 different variations of the query corresponding to the 10 different parameters before the users come in to work. The query results will then be cached and ready to respond quickly when the users re-issue the query.
upvoted 0 times
...
...
Katlyn
1 months ago
Hmm, I'm not sure about C. Relying on the search optimization service to adjust the plan seems a bit risky.
upvoted 0 times
Elinore
1 days ago
A: Yeah, I see your point. Option C does seem risky. It's probably best to go with a more proactive approach like A or B.
upvoted 0 times
...
Teresita
8 days ago
B: I agree, option B could also work well. Scheduling the task to align with users' working hours makes sense.
upvoted 0 times
...
Colene
14 days ago
A: I think option A is a good idea. Running the variations of the query before users come in could really help with performance.
upvoted 0 times
...
...
Denny
1 months ago
B looks good too, aligning the task schedule with the users' working hours is a nice touch.
upvoted 0 times
Oretha
11 days ago
B looks good too, aligning the task schedule with the users' working hours is a nice touch.
upvoted 0 times
...
Starr
12 days ago
A looks like a good solution, caching the results beforehand will definitely speed up the query performance.
upvoted 0 times
...
Jamal
15 days ago
B) Create a task that will run the 10 different variations of the query corresponding to the 10 different parameters before the users come in to work. The task will be scheduled to align with the users' working hours in order to allow the warehouse cache to be used.
upvoted 0 times
...
Tien
18 days ago
A) Create a task that will run the 10 different variations of the query corresponding to the 10 different parameters before the users come in to work. The query results will then be cached and ready to respond quickly when the users re-issue the query.
upvoted 0 times
...
...
Chandra
2 months ago
Option A seems like the way to go! Precomputing the results and caching them is a smart way to save on compute costs.
upvoted 0 times
Katy
17 days ago
User 4: Pre-running the queries and caching the results is a clever workaround for the performance problem.
upvoted 0 times
...
Myong
21 days ago
User 3: I agree. It's a practical solution that can make a big difference in query speed.
upvoted 0 times
...
Beckie
1 months ago
User 2: That's a good point. It would definitely help with the performance issue without increasing costs.
upvoted 0 times
...
Keena
1 months ago
User 1: Option A seems like the way to go! Precomputing the results and caching them is a smart way to save on compute costs.
upvoted 0 times
...
...
Josefa
2 months ago
I agree with Eric. Option A seems like a cost-effective solution to improve query performance without increasing compute costs.
upvoted 0 times
...
Eric
2 months ago
I think option A is the best choice. Running the variations of the query before the users come in will help in caching the results and responding quickly.
upvoted 0 times
...

Save Cancel
az-700  pass4success  az-104  200-301  200-201  cissp  350-401  350-201  350-501  350-601  350-801  350-901  az-720  az-305  pl-300  

Warning: Cannot modify header information - headers already sent by (output started at /pass.php:70) in /pass.php on line 77