Today’s article discusses the cost risks associated with using the Snowflake Data Cloud. It emphasizes the importance of proper administration and resource monitoring to mitigate these risks. We will also mention our service, Snoptimizer, which can help automate cost optimization and risk minimization related to Snowflake accounts.
Part 1: My Experience with Snowflake’s Data Cloud
As a Snowflake Data Superhero for the past 4 years, I can’t deny, I love using Snowflake. I fell in love with it at the beginning of 2018 when I realized how easily I could execute all of our Big Data Consulting Practice Solutions we had been doing for 18+ years. In the past, we would often run into scale challenges as the data’s size grew but Snowflake brought both ease of use and amazing scale to almost all of my big data consulting projects.
Over the last three years, my team and I have worked on hundreds of Snowflake accounts. I’ve come to realize that if Snowflake Anti-patterns occur or if poor compute security practices are used, Snowflake accounts are exposed to large cost risks, particularly with regard to computing costs. While Snowflake is an amazingly scalable cloud database and is the best cloud data warehouse I’ve used in the last 3+ years, the deployment of a Snowflake Account without proper settings and administration exposes a company to these cost risks.
Part 2: Examples of Data Cloud Cost Risks
Let’s say you actually used the Classic Console to create a new warehouse and used all the default settings… Even if you didn’t run any query, the cost for the standard settings would be 10 minutes * XL Warehouse (16 credits/hour) @ $3/credit. It is only $8 for those 10 minutes but it was $8 spent on nothing. Let’s say you had a rogue (or curious) trainee on a Snowflake Account that didn’t understand what they were doing and does the same thing they ONLY change the size to a 6XL. Your 10-minute run-for-nothing cost exposure is 10 min * 6XL Warehouse (512 credits/hour) @ $3/credit. Your account just spent $256 for 10 minutes of nothing.
Snowflake Cost Risk Use Case 6XL – 1 cluster:
- Cost per hour @ $3/credit = 3 * 512 = $1536Cost per day @ $3/credit = $36,864
Snowflake Cost Risk Use Case 6XL – 5 clusters:
*[we know this is a worst-case scenario on AWS/Snowflake and this one would be rare BUT without resource monitors and correct permissions it is possible]*Cost per hour @ $3/credit = 3 * 512 = $7680Cost per day @ $3/credit = $184,320
Snowflake Cost Risk Use Case 6XL – 10 clusters:
*[we know this is a worst-case scenario on AWS/Snowflake and this one would be rare BUT without resource monitors and correct permissions it is possible]*Cost per hour @ $3/credit = 3 * 512 = $15,360Cost per day @ $3/credit = $368,640
As you can see, this is unreasonable exposure to cost risks. If you are a Snowflake administrator, make sure you make appropriate changes to control costs and cost risk. If you want an automated approach to Cost Risk Management that can be set up easily in a few hours then try our Snoptimizer Cost Risk Solution.
Snowflake Cost Risk Mitigation – Administration – ACCOUNT ADMIN – MUST DO
The most important way to minimize Snowflake Cost Risk is to create Resource Monitors for every warehouse that has to suspend actions. Here is the code to do that: [replace 150 with your daily credit limit].
CREATE RESOURCE MONITOR "REMOVE_SNOWFLAKE_COST_RISK_EXAMPLE_RM" WITH CREDIT_QUOTA = 50 FREQUENCY = 'DAILY', START_TIMESTAMP = 'IMMEDIATELY', END_TIMESTAMP = NULL TRIGGERS ON 95 PERCENT DO SUSPEND ON 100 PERCENT DO SUSPEND_IMMEDIATE ON 80 PERCENT DO NOTIFY;
ALTER WAREHOUSE “TEST_WH” SET RESOURCE_MONITOR = “REMOVE_SNOWFLAKE_COST_RISK_EXAMPLE_RM”;
Part 3: Use Snoptimizer
Snoptimizer offers Snowflake users a unique solution to enhance the cost, performance, and security of their Snowflake accounts.
It provides you with a consistent and reliable daily analysis of how your Snowflake account is being optimized and rightsized to achieve maximum efficiency.
Try Snoptimizer today. Sign up and schedule a personal demo with us!
To conclude, we now understand that Snowflake’s Data Cloud Cost Risk is a real issue that needs proper administration. While the Snowflake Data Cloud offers immense scale and power for any analytical data processing need, it must be optimized and continuously monitored by a service like Snoptimizer. Remember, with great data processing power comes great cost management responsibility. If an administrator mistakenly grants access to an untrained user to create a 6XL instance that they don’t need and isn’t within the business budget, it can result in significant costs.
Try Snoptimizer today to avoid a data-driven cost catastrophe. If a new warehouse appears, we have you covered!