Snowflake separates storage, compute, and services into distinct layers:
Storage Layer: Data stored in compressed columnar format on cloud object storage (S3, Azure Blob, GCS)
Compute Layer: Virtual warehouses that run queries. Size from XS to XL. Spin up/down in seconds.
Services Layer: Query parsing, optimization, metadata management, access control
This separation lets you scale compute without touching storage. Multiple teams can query the same data using different warehouses without contention.