Member-only story
A modern database includes several cutting-edge features and is fully capable of separating computing from database storage. Data sharing between many Snowflake accounts is one of them.

In this article, we’ll examine how simple it is to share data between Snowflake accounts.
What is Data Sharing?
Secure Data Sharing allows you to share certain database items with other Snowflake accounts.
No actual data is copied or moved across accounts using Secure Data Sharing. All sharing is made possible through the unique services layer and metadata store of Snowflake. This is a crucial idea because shared data doesn’t consume any space in a consumer’s account and doesn’t contribute to the consumer’s monthly data storage fees. Consumers are only charged for the compute resources (i.e., virtual warehouses) needed to query the shared data.
As no data is moved over the network, secure data sharing to too fast and easy to implement. you need to execute a few SQL commands in snowflake and afterward, a consumer can consume the data in their Snowflake account.
Which data objects can be shared through Data Sharing?
As of now, we can share the below objects across the snowflake accounts.
- Tables
- External tables
- Secure views
- Secure materialized views
- Secure UDFs
How to share the database objects across Snowflake accounts?
SHARE
is the snowflake object that stores all the required information for data sharing and is consumed by consumers.

Let’s check out an example of sharing a database. Create a database with a few dummy tables from the below code in the provider account.
CREATE OR REPLACE DATABASE PROD_DB;
CREATE OR REPLACE SCHEMA PROD_DB.RAW;
CREATE OR REPLACE TABLE PROD_DB.RAW.TEST
(NAME VARCHAR,
ID1…