Snowflake Data Sharing Introduction (Snowflake Certification)

Data Sharing is one of the key differentiator in Snowflake and certification exam will ask 4-5 questions on this subject area. Data Sharing feature saves the cost, bring a lot of flexibilities when comes to data movement over traditional approaches (FTP/APIs/ETLs/Cloud Storage like S3 etc). Shared objects are 1st class objects and no hard limit on sharing. Shared objects, providers, consumers, readers & limitation with different snowflake editions are key concepts and knowing/understanding them for practical purpose is very important.

Snowflake Data Sharing : Genera Cheat Sheet

  1. No data copy and no movement anywhere.
  2. The sharing feature is achieved by using global service layer and metadata layer, hence this operation does not cost even a single penny.
  3. Storage in producers account, compute (VHW) in consumer’s account.
  4. Once share object is created, one or more consumer can be added.
  5. Reader’s account is an alternative to share data if consumer does not have Snowflake account.
  6. No hard limits on the number of shares you can create or the number of accounts you can add to a share.
  7. Traditional Data Sharing (some questions may come asking for advantage snowflake over traditional approach)
    • Email - easy but 25Mb limit, not secure
    • FTP - easy but administration and deconstruct
    • ETLs - mature but time taking and complex/costly, build for specific purpose
    • APIs - okay for small data and issue with large data set
    • Cloud Storage - lot of service available but DML not supported on these data set, less performance when query data

Important Notes for the Certification Exam

  1. Snowflake enables sharing of DB through share objects, created by data providers and “imported” by data consumers.
  2. Share objects does not come under database or schema context. They are at account level.
  3. Snowflake uses secure data sharing to share account usage data and sample data sets with all Snowflake accounts
  4. All database objects (tables, views etc) shared between accounts are read-only
    • Tip: objects cannot be modified or deleted, including adding or modifying table data, even can not be cloned)
  5. Data sharing is currently only supported between accounts in the same region. [Important]
  6. Any full Snowflake account can both provider and consumer shared data [Important]
  7. Sharing data from multiple table via secure views. [Important]
    • Tip: for secure views, grant reference usage is given on each database.
  8. VPS (Virtual Private Snowflake) does NOT support Secure Data Sharing [Important]
  9. The webUI does not currently support add/removing secure UDFs from shares. To be done via SQL [Important]

Snowflake Caching Summary Video

Snowflake SnowPro Practice & Reading Guide

SnowProc Certification Cheat Sheet

Refer topic wise important notes and cheat sheet

SnowProc Certification Practice Test