Snowflake Global Data Sharing (Part 1)

Which data sharing is right for my company?

Marcin Kulakowski
3 min readJan 9, 2022

What is a data share?

Named, first-class Snowflake objects that encapsulate all of the information required to share a database.

Created by the Data Provider and they configure all access.

Share Contains:
Privileges that grants access to the database, schema, and specific objects
• Data Consumer account name

New objects added to a share become available to all Data Consumers once permissions are granted on the new objects.

Shares cannot span multiple databases. Data Providers must create a separate share for each database — or — create a new database with Secure Views to all objects which will be shared.

Data Sharing Accounts

Simple Direct Data Sharing Example

In just a few simple steps the Data Consumer has access to live, ready to query data, no ETL involved, on-demand provisioning, share personalized data or business logic, it’s cross cloud and cross region enabled, all data is governed and revocable access.

Data Share Considerations

Shares can only have one database from the Data Provider

Each share can only have its own database on the Consumer/Reader Account

A share is a read-only with “light-switch” permissions to Consumer/Reader account roles.

Shares can not be cloned.

Shares can not be re-shared.

Time travel is not available to Data Consumers/Reader Accounts

Global Data Sharing

Data sharing is a core capability of Snowflake’s multi-tenant account architecture within a deployment (same cloud/same region)

But what about sharing data with accounts globally in other clouds and regions? What about sharing data with non-Snowflake customers? What about bi-directional data sharing where data consumers enriches received data from providers and shares it back?

The global data sharing is achieved by utilizing data replication to allow data providers to securely share their data with data consumers across different cloud and regions. Cross region data sharing is supported for Snowflake accounts hosted on AWS, Azure and GCP.

So which Data Sharing is Right for my Company?

In Part 2, I’ll go over some of global data sharing design pattern examples and its values.

--

--

Marcin Kulakowski

Don't solve a problem, offer a better solution and show the art of the possible. Currently @ Snowflake.