📖 Scenario: You are managing a Snowflake data warehouse for a small company. You need to create a warehouse with a specific size, then configure scaling options to handle varying workloads efficiently.
🎯 Goal: Build a Snowflake warehouse with a defined size and enable auto-scaling with a maximum cluster count.
📋 What You'll Learn
Create a warehouse named MY_WAREHOUSE with size SMALL
Set the warehouse to use AUTO_SUSPEND after 300 seconds
Enable AUTO_RESUME for the warehouse
Configure AUTO_SCALE with a maximum cluster count of 3
💡 Why This Matters
🌍 Real World
In real companies, managing warehouse size and scaling helps balance cost and performance for data processing workloads.
💼 Career
Cloud engineers and data analysts often configure Snowflake warehouses to optimize resource usage and handle varying query loads efficiently.
Progress0 / 4 steps
1
Create a warehouse with size SMALL
Write a Snowflake SQL statement to create a warehouse named MY_WAREHOUSE with size SMALL.
Snowflake
Hint
Use CREATE WAREHOUSE followed by the warehouse name and WAREHOUSE_SIZE option.
2
Set auto suspend and auto resume
Write a Snowflake SQL statement to alter the warehouse MY_WAREHOUSE to set AUTO_SUSPEND to 300 seconds and enable AUTO_RESUME.
Snowflake
Hint
Use ALTER WAREHOUSE to change settings on an existing warehouse.
3
Enable auto scaling with max cluster count
Write a Snowflake SQL statement to alter the warehouse MY_WAREHOUSE to enable multi-cluster auto-scaling with a maximum cluster count of 3.
Snowflake
Hint
Use MIN_CLUSTER_COUNT and MAX_CLUSTER_COUNT to configure auto-scaling clusters.
4
Set auto scaling policy to auto
Write a Snowflake SQL statement to alter the warehouse MY_WAREHOUSE to set the auto scaling policy to AUTO.
Snowflake
Hint
Use AUTO_SCALE_MODE = 'AUTO' to enable automatic scaling.
Practice
(1/5)
1. What does the size of a Snowflake warehouse primarily determine?
easy
A. The storage capacity for data
B. The amount of computing power available for queries
C. The number of users who can access the database
D. The network bandwidth for data transfer
Solution
Step 1: Understand warehouse size meaning
Warehouse size in Snowflake controls the compute resources allocated.
Step 2: Differentiate from storage and network
Storage and network bandwidth are managed separately, not by warehouse size.
Final Answer:
The amount of computing power available for queries -> Option B
Quick Check:
Warehouse size = compute power [OK]
Hint: Warehouse size means compute power, not storage or users [OK]
Common Mistakes:
Confusing warehouse size with storage capacity
Thinking warehouse size limits user access
Assuming network bandwidth depends on warehouse size
2. Which Snowflake warehouse size is correctly written in a SQL command to create a warehouse?
easy
A. CREATE WAREHOUSE mywh WAREHOUSE_SIZE = 'LARGE';
B. CREATE WAREHOUSE mywh WAREHOUSE_SIZE = 'medium';
C. CREATE WAREHOUSE mywh WITH WAREHOUSE_SIZE = 'XSMALL';
D. CREATE WAREHOUSE mywh SET SIZE = 'SMALL';
Solution
Step 1: Check correct syntax for warehouse size
The correct syntax uses WAREHOUSE_SIZE = 'SIZE' with uppercase size names.
Step 2: Validate option correctness
CREATE WAREHOUSE mywh WAREHOUSE_SIZE = 'LARGE'; uses correct syntax and valid size 'LARGE'. Others have syntax or size errors.
Final Answer:
CREATE WAREHOUSE mywh WAREHOUSE_SIZE = 'LARGE'; -> Option A
Quick Check:
Correct syntax uses WAREHOUSE_SIZE = 'SIZE' [OK]
Hint: Use WAREHOUSE_SIZE = 'SIZE' with uppercase size [OK]
Common Mistakes:
Using lowercase size names
Using WITH keyword
Using SET SIZE instead of WAREHOUSE_SIZE
3. Given a Snowflake warehouse set to size 'MEDIUM' with auto-suspend enabled at 5 minutes, what happens if no queries run for 6 minutes?
medium
A. The warehouse suspends automatically after 5 minutes of inactivity
B. The warehouse continues running indefinitely
C. The warehouse scales up to a larger size automatically
D. The warehouse deletes all cached data
Solution
Step 1: Understand auto-suspend behavior
Auto-suspend pauses the warehouse after the specified inactivity time to save costs.
Step 2: Apply to given time
Since no queries run for 6 minutes, which is more than 5 minutes, the warehouse suspends.
Final Answer:
The warehouse suspends automatically after 5 minutes of inactivity -> Option A
Quick Check:
Auto-suspend triggers after inactivity time [OK]
Hint: Auto-suspend pauses warehouse after set idle time [OK]
Common Mistakes:
Thinking warehouse keeps running without queries
Assuming warehouse scales automatically without manual setting
Confusing auto-suspend with cache clearing
4. You configured a multi-cluster warehouse with MIN_CLUSTER_COUNT=1 and MAX_CLUSTER_COUNT=3, but queries queue up during peak times. What is the likely cause?
medium
A. The warehouse is suspended manually
B. Warehouse size is too large causing delays
C. Auto-suspend is set to zero minutes
D. Auto-scaling is not enabled or configured incorrectly
Multi-cluster warehouses scale clusters between min and max counts automatically if auto-scaling is enabled.
Step 2: Identify cause of query queuing
If queries queue despite max clusters > 1, auto-scaling might be off or misconfigured, preventing cluster addition.
Final Answer:
Auto-scaling is not enabled or configured incorrectly -> Option D
Quick Check:
Multi-cluster needs auto-scaling enabled to add clusters [OK]
Hint: Check auto-scaling enabled for multi-cluster warehouses [OK]
Common Mistakes:
Assuming large warehouse size fixes queuing
Confusing auto-suspend with scaling
Not verifying if warehouse is suspended
5. A company wants to handle unpredictable spikes in query load without manual intervention. Which Snowflake warehouse configuration best supports this?
hard
A. Set warehouse size to X-LARGE and disable auto-suspend
B. Create multiple single-cluster warehouses and switch between them manually
C. Use a multi-cluster warehouse with auto-scaling enabled and set MIN_CLUSTER_COUNT=1, MAX_CLUSTER_COUNT=5
D. Set warehouse size to SMALL and rely on auto-resume only
Solution
Step 1: Identify need for handling spikes automatically
The company wants automatic scaling to handle unpredictable query spikes without manual steps.
Step 2: Evaluate options for auto-scaling
Multi-cluster warehouses with auto-scaling and a range of cluster counts allow dynamic scaling up and down.
Step 3: Compare other options
Set warehouse size to X-LARGE and disable auto-suspend wastes resources by disabling suspend; B requires manual switching; D is too small and lacks scaling.
Final Answer:
Use a multi-cluster warehouse with auto-scaling enabled and set MIN_CLUSTER_COUNT=1, MAX_CLUSTER_COUNT=5 -> Option C
Quick Check:
Multi-cluster auto-scaling handles spikes best [OK]
Hint: Multi-cluster with auto-scaling handles spikes automatically [OK]
Common Mistakes:
Choosing fixed large size wastes cost
Relying on manual warehouse switching
Ignoring cluster count settings
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.