100% Free Forever
AI-Powered Learning
Industry Expert Content
Certificates & Badges
Learn At Your Own Pace
Programming

Snowflake Architecture

A deep dive into Snowflake's three-layer architecture: storage, compute, and cloud services.

FoundationsBeginner9 min readJul 10, 2026
Analogies

Snowflake Architecture

Snowflake's architecture consists of three logically separate but tightly integrated layers: a centralized storage layer, an elastic multi-cluster compute layer made of virtual warehouses, and a cloud services layer that coordinates everything from authentication to query optimization. This hybrid design borrows the best of shared-disk architectures (single copy of data) and shared-nothing architectures (independent compute nodes), which is why Snowflake documentation calls it a 'multi-cluster, shared data' architecture.

🏏

Cricket analogy: Think of a cricket board like the BCCI having three separate wings — the ground/pitch authority (storage), the players and support staff hired per match (compute), and the central match-scheduling and umpiring office (cloud services) — all working together but run independently.

The Storage Layer

When data is loaded into Snowflake, it is automatically reorganized into compressed, columnar micro-partitions — typically 50 to 500 MB of uncompressed data each — and stored in the cloud provider's object storage (such as Amazon S3). Snowflake maintains rich metadata about each micro-partition, including min/max values per column, which lets the query optimizer prune irrelevant partitions instantly without scanning them, a technique called partition pruning.

🏏

Cricket analogy: Like Cricinfo breaking a Test match into overs so a stat like 'Kohli's runs in the 40th over' can be looked up instantly rather than replaying the whole match, micro-partitions let Snowflake jump straight to relevant chunks of data.

The Compute Layer: Virtual Warehouses

A virtual warehouse is a cluster of compute resources — CPU, memory, and temporary storage — that you spin up to run queries, sized from X-Small to 6X-Large, with each size roughly doubling the compute of the one below it. Because warehouses read the same underlying storage, you can run a 'LOADING_WH' for ETL and a completely separate 'BI_WH' for dashboard queries against the same tables at the same time, and either warehouse can auto-suspend after idling to stop billing.

🏏

Cricket analogy: Like fielding a T10 side versus a full Test squad — you pick warehouse size (X-Small to 6X-Large) based on the format of the job, and a franchise can run separate net sessions for batters and bowlers simultaneously without either group waiting.

The Cloud Services Layer

The cloud services layer is Snowflake's own managed fleet of servers that handles authentication, access control, the query parser and optimizer, infrastructure management, and metadata — all without you provisioning anything. This is also where result caching lives: if you rerun an identical query within 24 hours and the underlying data hasn't changed, Snowflake can return the cached result directly from this layer without spinning up any warehouse compute at all.

🏏

Cricket analogy: Like the third umpire's review system that instantly recalls the exact replay footage requested rather than re-filming the delivery, Snowflake's result cache returns a previously computed answer instantly if nothing has changed.

sql
CREATE WAREHOUSE BI_WH
  WAREHOUSE_SIZE = 'MEDIUM'
  AUTO_SUSPEND = 60
  AUTO_RESUME = TRUE
  INITIALLY_SUSPENDED = TRUE;

-- Run a query; Snowflake will auto-resume BI_WH if suspended
USE WAREHOUSE BI_WH;
SELECT COUNT(*) FROM analytics_db.finance.orders;

Result caching only applies when the query text and underlying data are unchanged and the user has permission to see the result — inserting even one new row into a source table invalidates the cache for queries against it, forcing a fresh warehouse computation.

  • Snowflake uses a three-layer architecture: storage, compute (virtual warehouses), and cloud services.
  • Data is stored as compressed columnar micro-partitions with rich metadata enabling partition pruning.
  • Virtual warehouses range from X-Small to 6X-Large and can auto-suspend/auto-resume.
  • Multiple independent warehouses can query the same storage simultaneously without contention.
  • The cloud services layer manages authentication, optimization, and metadata — with no infrastructure to manage.
  • Result caching in the cloud services layer can return repeated identical queries instantly.
  • This 'multi-cluster, shared data' design blends shared-disk and shared-nothing architecture benefits.

Practice what you learned

Was this page helpful?

Topics covered

#Programming#SnowflakeStudyNotes#SnowflakeArchitecture#Snowflake#Architecture#Storage#Layer#StudyNotes#SkillVeris#ExamPrep