
Explore the course structure and content from SQL data generation to Python ETL and Snowpark dataframes. Build end-to-end Snowflake apps with VSCode extensions, notebooks, container runtimes, and Streamlit deployments.
Generate synthetic test data in Snowflake SQL worksheets using a table generator and random values, then save results to a fake customers table and explore related built-in options.
Load a CSV into Snowflake using the web UI data load wizard to create a table from file, then connect with the VSCode extension to run SQL and preview data.
Explore how the Snowpark data frame API translates Python operations into SQL behind the scenes, materializing data with save as table and applying ELT transformations.
Discover how to migrate from in-memory Pandas pipelines to Snowpark data frames and CTAS-based server-side transformations for large production data.
Learn how Python worksheets in Snowflake convert Python code into dynamic stored procedures that run on the server, and compare them to SQL worksheets and their limitations.
Declare and run Python stored procedures in Snowflake, executing within the warehouse via snowpark sessions, and learn the architecture, libraries, data type mappings, and SQL and Python requirements.
Discover how Snowpark stored procedures and UDFs let you decorate Python functions into SQL constructs. Explore stages, Python sandbox execution, and the tradeoffs between data frame and stored procedure APIs.
Learn how a remote data architect built a Snowflake data ingestion pipeline with JavaScript stored procedures, the limitations of Python then, and how Python workflows emerged later.
Explore how execute as owner versus execute as caller affects stored procedures in Snowflake, including granting rights to schemas, databases, and warehouses, and resolving privilege issues.
Set up jupyter notebooks in vscode with the jupyter extension and create ipynb files. Select a kernel in a virtual environment to run snowpark workflows with python against snowflake.
Discover how to create and use Snowflake notebooks—from grid, repository, or import options—to run Python and SQL in a warehouse, and visualize data with plots.
Run Python in Snowflake notebooks with container runtime, selecting CPU or GPU compute pools and installing packages via pip. Explore container services, external access integrations, and differences from warehouses.
Learn to build Streamlit data apps connected to Snowflake via Snowpark, using input widgets, tabs, and data frames with a local web server and optional Streamlit cloud deployment.
Explore building a multi-page Streamlit app for Snowflake by organizing code into a pages folder, separating data generation, data inspection, and charts, and sharing parameters via utils and secrets.
Deploy Streamlit apps to Snowflake via a stage and SQL script, automating dependencies with an environment YAML file and conda for scalable, multi-file, multi-page apps.
Master secure data sharing in Snowflake by creating outbound data shares and using private data exchange or marketplace to share secure views, UDFs, and UDTFs.
Examine how Snowflake native apps and data sets are exposed via the marketplace or private data exchange, using application packages and manifest YAMLs to share with consumer accounts.
Explore deploying a Python application in Snowflake with containers and Snowpark container services. Assess Docker image loads, Kubernetes functionality, and basic scalability via compute pools and service instances.
Complete this hands-on course by walking through more than 20 deployment approaches for a simple Python application in Snowflake, guided by a data architect's client-focused deployment iterations.
This course will take one simple ETL/ELT piece of Python/SQL code and deploy it in over a dozen different ways, in Snowflake or connected to Snowflake. Each time describing the system architecture and the implications. On scalability, data protection and security, how close to the data the code runs.
Who this course is for
Python developers looking to extend their knowledge of Snowflake.
Aspiring Data Architects, with focus on Snowflake.
Solution Architects with a goal of understanding all sorts of Snowflake application development.
Data Engineers looking to move into Data Architecture.
Any technical person willing to better understand all sorts of architectures in Snowflake AI Data Cloud.
What you will learn
How to properly deploy an application into the Snowflake AI Data Cloud in multiple ways.
How to implement simple business logic in Python and get the code executed by the Snowflake SQL engine.
How to get from a simple Streamlit local web app to a complex Native App running in Snowflake Containers.
How to think in terms of system architecture, modularity and scalability, when building and deploying a data application.
How to visualize the different building blocks of a data application.
How to generate fake data with either built-in Snowflake functions or Python libraries.
What kind of architectures we'll present here
SQL Worksheets and Python Worksheets
Snowflake Connector for Python
Snowpark DataFrame API and Snowpark for stored procs
Pandas DataFrame API
Stored Procedures in Python and Execute as Caller
Jupyter Notebooks and Snowflake Notebooks
Streamlit Web Apps and Streamlit Community Cloud
Streamlit in Snowflake Applications
Secure Data Sharing
Snowflake Native Apps
Snowpark Container Services
VSCode Extensions for Snowflake and Jupyter
[Disclaimer: We are not affiliated with or endorsed by Snowflake, Inc.]