Chapter 9. Analyzing and Improving Snowflake Query Performance

Snowflake was built for the cloud from the ground. Further, it was built to abstract away much of the complexity users typically face when managing their data in the cloud. Features such as micro-partitions, a search optimization service, and materialized views are examples of unique ways Snowflake works in the background to improve performance. In this chapter, we’ll learn about these unique features.

Snowflake also makes it possible to easily analyze query performance through a variety of different methods. We’ll learn about some of the more common approaches to analyzing Snowflake query performance, such as query history profiling, the hash function, and the Query Profile tool.

Prep Work

Create a new worksheet titled Chapter9 Improving Queries. Refer to “Navigating Snowsight Worksheets” if you need help creating a new folder and worksheet. To set the worksheet context, make sure you are using the SYSADMIN role and the COMPUTE_WH virtual warehouse. We’ll be using the SNOWFLAKE sample database; therefore, no additional preparation work or cleanup is needed in this chapter.

Analyzing Query Performance

Query performance analysis helps identify poorly performing queries that may be consuming excess credits. There are many different ways to analyze Snowflake query performance. In this section, we’ll look at three of them: QUERY_HISTORY profiling, the HASH() function, and using the web UI’s history.

QUERY_HISTORY Profiling ...

Get Snowflake: The Definitive Guide now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.