
Review and suspend idle Snowflake warehouses, set default auto suspend after one minute, and monitor cost management, query history, and zero-copy clones to avoid wasted credits.
Minimize compute costs with an x-small, single-node warehouse that auto suspends after one minute and use standard edition with economy mode. Avoid duplication; limit time travel and fail-safe.
Upload and transform JSON data in Snowflake by creating a JSON file format, loading from a stage, inferring schema, and loading into a temporary table.
Generate 1000 synthetic records with the Python faker library to create realistic names, addresses, cities, states, and emails, then load into a pandas dataframe.
Explore representing hierarchical data in SQL by building a view of employee and manager names, computing level and path, and comparing recursive CTEs, connect by, and recursive views in Snowflake.
Review stored procedures and functions in snowflake, covering create procedure, create function for udf and udtf, returns clauses, sql scripting and javascript patterns, and considerations with python, java, and scala.
Explore accessing json object properties and array elements in Snowflake by loading json into a variant, creating a table, and using dot notation and indexing to extract values.
Learn to use snowflake scripting to create a JavaScript function UDF that returns SQL statement as a string and call it from a procedure using string interpolation and execute immediate.
Test the generic hierarchy viewer with portfolio data loaded from CSV, creating a portfolio table with child and parent columns and validating indented, dot-separated paths via a JavaScript store procedure.
Explore scoped transactions and the behavior of inner and outer transactions in Snowflake, including begin transaction, commit, rollback, autocommit effects, and how DDL statements affect transactions.
Demonstrate manual CDC with a merge statement by syncing a source stage table to a target, handling insert, update, and delete via a del flag and ID match.
Transform tabular data into json by prototyping with Python, pandas, and simple templates, converting an employee manager csv into json, xml, and yaml formats with hierarchical structures.
Explore creating hierarchical graphs with Graphviz by loading csv data into a pandas data frame, generating a digraph of edges, and customizing labels, styles, and directions.
Explore how to build animated charts with d3, including collapsible tree, radial dendrogram, and circular packing, by wiring template html to json data in code examples.
Explore how to upload csv files, select columns, and share a Streamlit prototype online, with layout components, widgets, state, data cache, and deployment.
Learn to build a streamlit app that uploads a csv file, lets users choose child and parent columns, and caches data loading for efficient visualization.
Publish your Streamlit web app to Streamlit Cloud by deploying from a GitHub repository. Make it public, add a gitignore, and use requirements.txt for deployment.
IMPORTANT: This course requires an INTERMEDIATE level and it may NOT be for you if you just recently started with Snowflake, relational databases, with SQL and/or Python programming. It occasionally deals with advanced notions about security, software and data engineering, REST APIs etc, that are not explained here. Check the minimum Requirements for this course, and the "What is NOT Included in This Course" section below, before buying this course.
Who I Am
The only world-class expert from Canada selected for the Snowflake Data Superhero program in 2021.
Former SnowPro Certification SME (Subject Matter Expert): i.e. many exam questions have been created by me.
Passed eight SnowPro certification exams to date, all from the first attempt.
Specialized in Snowflake for the past few years, I worked for Snowflake Partner companies, and I served dozens of clients in this capacity or as an independent consultant.
Today I continue to work with Snowflake, but I am no longer affiliated with their company in any capacity. I recently left most of their programs to keep my professional independence.
What You Will Learn
How to access, expand and automate Snowflake through most if not ALL their existing APIs.
How to build useful real-life tools and small apps with Snowflake APIs.
How to ingest CSV and JSON data into Snowflake, through data pipelines and Snowpipe.
How to write medium to complex data analytics queries for Snowflake.
How to optimize queries, compute, storage and overall costs for Snowflake.
How to process and render semi-structured and hierarchical data and metadata in Snowflake.
I tried to cover almost everything from Snowflake to date, only from a programming perspective.
What Snowflake APIs You Will Learn About
SQL (DDL/DML/DCL) and Snowflake Scripting
Stored Procedures, User-Defined Functions (UDFs), User-Defined Table Functions (UDTFs)
Python Client, Snowpark for Python, Python Worksheets
Streamlit Web Apps, Streamlit for Snowflake, Snowflake Native Apps Framework
Secure Data Sharing and Data Clean Rooms
Sharing with private Data Exchange or public Marketplace
Snowflake SQL REST API and Snowpipe REST API
Querying metadata from Account Usage and Information Schema
I tried to cover most possible APIs that Snowflake offers today!
What is NOT Included in This Course
Data Science and Machine Learning APIs.
Most external integrations, such as external functions, or Kafka and Spark connectors.
Integrations with data transfer applications or other third-party partner apps.
Client driver programming in Go, PHP, Java etc.
Snowpark programming in Java or Scala.
Main focus was on SQL and Python, with small extra snippets in JavaScript, C#, Java, Scala.
Real-Life Applications You Will Learn To Build
CDC Data Pipelines with streams and tasks, or dynamic tables
Generic hierarchical data viewer
Hierarchical metadata viewer (for data lineage and object dependencies, role hierarchy, etc.)
Enhanced query profile
Script automation accessing the SQL REST API
We’ll build all apps from scratch. We’ll use then Streamlit – for many of them - to create simple web apps, local or remote. We may deploy them into Snowflake, as Streamlit Apps. Or even share them with local partner accounts, as Native Apps.
I sold tools similar to these to real-life clients and Snowflake partners!
No other course, book or documentation around - including those from Snowflake! – will offer as much insights, hands-on exercises and knowledge transfer as my course here, guaranteed!
Enroll today, to keep this course forever. And help me continue to update it with new APIs Snowflake comes frequently up with.
[Disclaimer: We are not affiliated with or endorsed by Snowflake, Inc.]