Snowflake SnowPro Core Cheat Sheet
By: Rajiv Gupta
Tags: Guides And Tutorials, Certification, Snowflake, Cheatsheet, Snow

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

Task

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.

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:-