COF-C02 · Question #555
A Snowflake user wants to optimize performance for a query that queries only a small number of rows in a table. The rows require significant processing. The data in the table does not change…
The correct answer is C. Create a materialized view based on the query. A materialized view pre-computes and stores query results, making repeated execution of complex, processing-heavy queries nearly instant. It is the best fit here because: the data changes infrequently (so the materialized view stays fresh without excessive refresh cost), the…
Question
A Snowflake user wants to optimize performance for a query that queries only a small number of rows in a table. The rows require significant processing. The data in the table does not change frequently. What should the user do?
Options
- AAdd a clustering key to the table.
- BAdd the search optimization service to the table.
- CCreate a materialized view based on the query.
- DEnable the query acceleration service for the virtual warehouse.
How the community answered
(27 responses)- A7% (2)
- B4% (1)
- C70% (19)
- D19% (5)
Explanation
A materialized view pre-computes and stores query results, making repeated execution of complex, processing-heavy queries nearly instant. It is the best fit here because: the data changes infrequently (so the materialized view stays fresh without excessive refresh cost), the query targets a small row set with significant computation (exactly what materialized views are designed for). Search Optimization (B) speeds up point-lookup row retrieval but doesn't reduce processing overhead. Clustering keys (A) help with range scans on large tables. Query Acceleration (D) helps with warehouse-level parallelism for ad-hoc analytical queries, not reducing repeated computation.
Topics
Community Discussion
No community discussion yet for this question.