0
0
Snowflakecloud~30 mins

Snowflake architecture (storage, compute, services layers) - Mini Project: Build & Apply

Choose your learning style9 modes available
Snowflake Architecture: Storage, Compute, and Services Layers
📖 Scenario: You are working as a cloud architect for a company that wants to understand how Snowflake organizes its cloud data platform. Snowflake separates its architecture into three main layers: storage, compute, and services. This separation helps the company scale efficiently and manage data securely.
🎯 Goal: Build a simple Snowflake setup that demonstrates the separation of storage, compute, and services layers by creating a database, a warehouse, and a role with specific privileges. This will help you see how Snowflake manages data storage, query processing, and access control separately.
📋 What You'll Learn
Create a database named company_data to represent the storage layer
Create a warehouse named compute_wh to represent the compute layer
Create a role named data_analyst to represent the services layer
Grant the data_analyst role usage on the warehouse and select privileges on the database
💡 Why This Matters
🌍 Real World
Snowflake's architecture allows companies to store large amounts of data securely, process queries efficiently, and manage user access separately. This separation helps in scaling and optimizing costs.
💼 Career
Understanding Snowflake's architecture is essential for cloud architects, data engineers, and database administrators who design and manage cloud data platforms.
Progress0 / 4 steps
1
Create the storage layer database
Create a database called company_data to represent the storage layer in Snowflake.
Snowflake
Need a hint?

Use the CREATE DATABASE command followed by the database name.

2
Create the compute layer warehouse
Create a warehouse called compute_wh to represent the compute layer in Snowflake.
Snowflake
Need a hint?

Use CREATE WAREHOUSE with a small size and enable auto suspend and resume for cost efficiency.

3
Create the services layer role
Create a role called data_analyst to represent the services layer in Snowflake.
Snowflake
Need a hint?

Use CREATE ROLE followed by the role name.

4
Grant privileges to the role
Grant the data_analyst role usage on the compute_wh warehouse and select privileges on the company_data database.
Snowflake
Need a hint?

Use GRANT USAGE ON WAREHOUSE and GRANT SELECT ON DATABASE commands for the role.