What is Snowflake Auto-Suspend and Auto-Resume?
When creating a Snowflake warehouse, it allows to configure the auto-suspend and auto-resume.
Snowflake charges on the virtual warehouse occupied compute resource. When a virtual warehouse is idle, which means there are no active queries running, it continues to consume compute resources and accrue costs. The Auto-Suspend feature helps to optimize resource utilization and cost management by automatically suspending virtual warehouses after a specified period of inactivity.
When a virtual warehouse is suspended, it releases the compute resources it was consuming, and no charges are incurred for the suspended time. The suspended virtual warehouse can be auto-resumed when a new query is submitted, ensuring that resources are available on-demand and minimizing the time required for query execution.
By utilizing the auto-suspend feature, organizations can effectively manage their Snowflake resources, reduce costs by only paying for compute resources when they are actually needed, and optimize the overall performance and efficiency of their data analytics workflows.
Things to watch out
Because auto-suspend is based on the connection activity, please be mindful about the periodic queries polling the snowflake virtual warehouse, as they will keep the warehouse always active. Snowflake offers $400 credit for 30-day trial, it will be exhausted way before 30-day trial if the warehouse is active all the time.
While keeping an eye on the Snowflake cost, you may also want to improve the Snowflake change management process. Please check out Bytebase, it brings the code like CI/CD workflow to Snowflake.