bestcourses is supported by learners. When you buy through links on our website, we may earn an affiliate commission. Learn more
Terraform Snowflake from Scratch
Complete guide to Managing Snowflake with Terraform
Created by Jeremy Holtzman, offered on Udemy
To make sure that we score courses properly, we pay a lot of attention to the reviews students leave on courses and how many students are taking a course in the first place. This course has a total of 28 students which left 1 reviews at an average rating of 5, which is average.
We analyze course length to see if courses cover all important aspects of a topic, taking into account how long the course is compared to the category average. This course has a length of 10 hours 26 minutes, which is pretty short. This might not be a bad thing, but we've found that longer courses are often more detailed & comprehensive. The average course length for this entire category is 7 hours 54 minutes.
This course currently has a bestcourses score of 5.4/10, which makes it an average course. Overall, there are probably better courses available for this topic on our platform.
Terraform is an incredibly powerful tool to manage infrastructure, especially Snowflake. The first few sections in this course set you up with the fundamentals for success, while the advanced sections in the end provide more details on completely building out your architecture.
The price of the course is based on the time and effort put into it, but at the same time, I want it to be affordable for all. If the price is an issue, please reach out and I'll be happy to figure it out with you.
What you'll learn
By the end of the class, you'll have completely connected your own Terraform and Snowflake accounts following best practices, and you'll be able to manage your Snowflake objects (users, roles, warehouses, databases, etc.) with Terraform. Some of these skills you'll gain include:
Manage all types of Snowflake objects using modules that can easily be reused
Grant privileges on all of these objects, including future grants that simplify the management of databases and schemas
Creation and management of roles in a hierarchical structure to simplify grants
Ability to import existing Snowflake objects into your Terraform configuration
Setting up a DEV and PROD Snowflake account, and using GitHub to manage it all
Why you should use Terraform to manage your Snowflake account
Snowflake is an incredible data warehouse critical to thousands of organizations. But effectively managing Snowflake at scale has been difficult, until we start taking advantage of Terraform.
Some of the benefits of using Terraform with Snowflake include:
Speeding up manual and repetitive tasks
Standardization of roles and privileges
Auditability of privileges
Code review for the management of Snowflake objects
Essentially, Terraform allows you to use Infrastructure as Code to manage your Snowflake account. The state of Snowflake objects is controlled by the configuration you set up in Terraform, which makes it simple to manage.
Terraform is an open-source infrastructure as code software tool that provides a consistent CLI workflow to manage hundreds of cloud services. Terraform codifies cloud APIs into declarative configuration files. There is a specific provider plugin that allows you to manage your Snowflake account with Terraform.
What you will learn
- Connect Terraform to Snowflake
- Run Terraform plans and applies
- Create and manage Snowflake objects with Terraform
- Grant privileges on Snowflake objects to roles using Terraform
- Create custom modules to manage Snowflake objects with Terraform at scale
- Advanced Terraform features including imports, moves, and removes
- How to set up and use Terraform Cloud
- Proper Snowflake authentication with Key Pair or OAuth
- Connecting Terraform to Github to view plans before merging in
- Managing a DEV and PROD Snowflake account with Terraform
- Terraforming Snowflake best practices
- Ability to work in the command line