Snowflake SnowPro Core Cheat Sheet

Rajiv Gupta
4 min readMar 26, 2021

Dear Reader,

Today I am happy to share my SnowPro cheat sheet which I had created during my Snowflake certification preparation phase. I was looking for such one stop quick reference during my preparation phase and couldn’t find any. Few were present in Mindtickle courses but scatter in multiple courses. There were many more, but I put few of the important below:

Editions:

Source: Snowflake
Source: Snowflake

Kafka Connector

Source: Snowflake
Source: Snowflake

Bulk Loading:

Source: Snowflake
Source: Snowflake
Source: Snowflake

Stages:

User stage: list @~;

Table stage: list @%mytable;

Named stage: list @my_stage;

AWS Data Loading: Snowflake requires the following permissions on an S3 bucket and folder to be able to access files in the folder (and sub-folders):

s3:GetObject
s3:GetObjectVersion
s3:ListBucket

Note

The additional s3:PutObject and s3:DeleteObject permissions are required only if you plan to unload files to the bucket or automatically purge the files after loading them into a table.

GCP Data Loading: Snowflake requires the following permissions

Data loading only:
storage.buckets.get
storage.objects.get
storage.objects.list

Data loading with purge option:
storage.buckets.get
storage.objects.delete
storage.objects.get
storage.objects.list

Data loading and unloading:
storage.buckets.get
storage.objects.create
storage.objects.delete
storage.objects.get
storage.objects.list

Unloading Data from Snowflake:

Source: Snowflake
Source: Snowflake
Source: Snowflake

Streams

Stream Columns
A stream stores data in the same shape as the source table (i.e. the same column names and ordering) with the following additional columns:

METADATA$ACTION
Indicates the DML operation (INSERT, DELETE) recorded.

METADATA$ISUPDATE
Indicates whether the operation was part of an UPDATE statement. Updates to rows in the source table are represented as a pair of DELETE and INSERT records in the stream with a metadata column METADATA$ISUPDATE values set to TRUE.
Note that streams record the differences between two offsets. If a row is added and then updated in the current offset, the delta change is a new row. The METADATA$ISUPDATE row records a FALSE value.

METADATA$ROW_ID
Specifies the unique and immutable ID for the row, which can be used to track changes to specific rows over time.

Architecture

Source: Snowflake

Web UI: I tried to put all things in one place related to switching of role in Snowflake Web UI worksheet and its impact on changes of behavior/layout. For details on Web UI cheat sheet please watch below video.

Hope this will help all those who are aspiring to do SnowPro Core certification. Hope this blog help you to get insight on role switching related quick reference. Feel free to ask a question in the comment section if you have any doubts regarding this reference. Give a clap if you like the blog. Stay connected to see many more such cool stuff. Thanks for your support.

You Can Find me:

Follow me on Medium: https://rajivgupta780184.medium.com/

Follow me on Twitter: https://twitter.com/RAJIVGUPTA780

Connect with me in LinkedIn: https://www.linkedin.com/in/rajiv-gupta-618b0228/

Subscribe to my YouTube Channel: https://www.youtube.com/channel/UC8Fwkdf2d6-hnNvcrzovktg

#Keep learning #Keep Sharing #Everyday Learning.

References:-

--

--

Rajiv Gupta

Sr. Architect at Cognizant, Snowflake Data Super Hero, Snowflake SME