Query Performance in Snowflake

Introduction to Data Modeling in Snowflake

Nuno Rocha

Director of Engineering

Data storage

Row-based storage

Introduction to Data Modeling in Snowflake

Data storage (1)

Row-based PostgreSQL

Introduction to Data Modeling in Snowflake

Data storage (2)

Row-based Snowflake

Introduction to Data Modeling in Snowflake

Massively parallel processing

Multiple parallel processes executing a query

Introduction to Data Modeling in Snowflake

MPP's role in data storage

Data split in micro partitions

Introduction to Data Modeling in Snowflake

MPP's role in data storage (1)

Data split in regular partitions

Introduction to Data Modeling in Snowflake

Visualizing query execution times

Query execution result

Introduction to Data Modeling in Snowflake

Visualizing query execution times (1)

Instruction to find query profile

Introduction to Data Modeling in Snowflake

Visualizing query execution times (2)

Query profile page

Introduction to Data Modeling in Snowflake

Terminology overview

  • Massively Parallel Processing (MPP): Snowflake's engine that processes data using multiple servers simultaneously.
  • Micro-partitions: Small data storage segments in Snowflake that enhance retrieval speed.
  • Columnar Storage: Data storage format that stores each column of data separately.
  • Row-based Storage: Traditional data storage format where each row of data is stored sequentially.
  • PostgreSQL: Open-source relational database system that uses row-based storage, commonly compared to Snowflake for performance benchmarking.
  • Query Profile: Snowflake feature to visualize the steps and resource usage of query execution.
Introduction to Data Modeling in Snowflake

Let's practice!

Introduction to Data Modeling in Snowflake

Preparing Video For Download...