Database / Snowflake Interview Questions
What is Snowflake's separation of compute from storage and what billing advantages does it provide?
In Snowflake, storage and compute are billed as completely independent resources. Storage is charged at a flat rate per terabyte per month of compressed data in cloud object storage, regardless of query volume. Compute is charged per credit-second, and only when a Virtual Warehouse is actively in the STARTED state.
This separation creates three concrete billing advantages. First, an idle warehouse can be suspended in seconds, immediately stopping all compute billing while data remains intact and instantly accessible. Second, multiple warehouses reading the same data cost no extra storage — a marketing analytics warehouse and a data science warehouse can both query the same 50 TB of data, each paying only for their own compute time. Third, you can spin up a powerful warehouse for a one-hour intensive job and pay for only those 3,600 seconds of compute, rather than running that power 24/7.
Compare this to Amazon Redshift provisioned clusters: the cluster runs continuously whether queries execute or not — you pay for every hour it exists. Redshift Serverless partially addresses this, but Snowflake's model is fundamentally more granular and flexible.
- Storage: billed per TB/month compressed (typically 40–60% of uncompressed size).
- Compute: billed per credit-second; 1 credit costs roughly $2–4 depending on edition and cloud region.
- Cloud Services: free up to 10% of daily compute consumption; excess billed separately.
- Data transfer: egress charges apply for cross-region or cross-cloud replication.
More Related questions...