Bird
Raised Fist0
Snowflakecloud~5 mins

Why data sharing eliminates data copies in Snowflake - Why It Works

Choose your learning style10 modes available
Introduction
Data sharing lets you access data directly from another account without making extra copies. This saves storage space and keeps data up to date automatically.
When you want to give a partner access to your data without sending files.
When multiple teams need to use the same data without duplicating it.
When you want to avoid delays caused by copying large datasets.
When you want to keep data consistent and avoid version conflicts.
When you want to reduce storage costs by not duplicating data.
Commands
This command creates a new data share named 'my_share' to share data with other accounts.
Terminal
CREATE SHARE my_share;
Expected OutputExpected
Statement executed successfully.
This grants the share access to the database 'my_database' so the data can be shared.
Terminal
GRANT USAGE ON DATABASE my_database TO SHARE my_share;
Expected OutputExpected
Statement executed successfully.
This adds a specific schema from the database to the share, specifying which data is shared.
Terminal
ALTER SHARE my_share ADD SCHEMA my_schema;
Expected OutputExpected
Statement executed successfully.
In the consumer account, this command creates a database that references the shared data without copying it.
Terminal
CREATE DATABASE shared_db FROM SHARE provider_account.my_share;
Expected OutputExpected
Statement executed successfully.
This lists the tables available in the shared database to verify access to the shared data.
Terminal
SHOW TABLES IN DATABASE shared_db;
Expected OutputExpected
name kind database schema comment shared_table TABLE shared_db my_schema
Key Concept

Data sharing lets multiple users access the same data directly without making extra copies, saving space and keeping data fresh.

Common Mistakes
Trying to copy shared data into a new table manually.
This defeats the purpose of sharing by creating duplicates and wasting storage.
Use the shared database directly without copying data.
Not granting usage on the database or schema to the share.
Without proper grants, the share cannot access the data, so sharing fails.
Always grant usage on the database and schema to the share.
Assuming shared data is stored in the consumer account.
Shared data stays in the provider account; consumer only references it.
Understand that sharing creates a live reference, not a copy.
Summary
Create a share and grant it access to the database and schema you want to share.
Consumers create a database from the share to access data without copying it.
This method saves storage and keeps data consistent across accounts.

Practice

(1/5)
1. What is the main reason data sharing in Snowflake eliminates the need for data copies?
easy
A. Because data is automatically deleted after sharing
B. Because users access the same data directly without duplicating it
C. Because data is encrypted before sharing
D. Because each user gets a personal copy of the data

Solution

  1. Step 1: Understand data sharing concept

    Data sharing allows multiple users or accounts to access the same dataset without creating separate copies.
  2. Step 2: Identify how data copies are avoided

    Since users query the shared data directly, no extra storage is used for duplicates.
  3. Final Answer:

    Because users access the same data directly without duplicating it -> Option B
  4. Quick Check:

    Data sharing = no data copies [OK]
Hint: Data sharing means one data source accessed by many [OK]
Common Mistakes:
  • Thinking data is copied for each user
  • Confusing encryption with data copying
  • Assuming data is deleted after sharing
2. Which Snowflake object is used to share data without creating copies?
easy
A. Secure share
B. Database clone
C. Data warehouse
D. Stage

Solution

  1. Step 1: Identify Snowflake sharing object

    Snowflake uses a 'secure share' object to share data securely without copying.
  2. Step 2: Differentiate from other objects

    Database clones create copies; warehouses process queries; stages store files. Only secure shares share data without copies.
  3. Final Answer:

    Secure share -> Option A
  4. Quick Check:

    Secure share = data sharing without copies [OK]
Hint: Secure share shares data without copying it [OK]
Common Mistakes:
  • Confusing clones with shares
  • Thinking warehouses share data
  • Mixing stages with data sharing
3. If Account A shares a table with Account B using Snowflake's data sharing, what happens when Account B queries the table?
medium
A. Account B queries a copy stored in its own storage
B. Account B must first copy the table to its account
C. Account B cannot query the table directly
D. Account B queries the original table in Account A's storage

Solution

  1. Step 1: Understand shared table access

    When Account B queries a shared table, it accesses the original data stored in Account A's storage.
  2. Step 2: Confirm no data copying occurs

    Snowflake's sharing avoids copying by letting Account B query data directly from Account A's storage.
  3. Final Answer:

    Account B queries the original table in Account A's storage -> Option D
  4. Quick Check:

    Shared data queried from original storage [OK]
Hint: Shared data is queried from original account storage [OK]
Common Mistakes:
  • Assuming data is copied to Account B
  • Thinking Account B must copy before querying
  • Believing Account B cannot query shared data
4. A user tries to share a table but accidentally creates a clone instead. What is the main problem with this approach?
medium
A. The clone shares data without copying
B. The clone automatically deletes original data
C. The clone creates a full copy, using extra storage
D. The clone cannot be queried

Solution

  1. Step 1: Understand difference between clone and share

    A clone creates a full copy of the data, which uses additional storage space.
  2. Step 2: Identify the problem with cloning for sharing

    Cloning duplicates data, defeating the purpose of sharing without copies.
  3. Final Answer:

    The clone creates a full copy, using extra storage -> Option C
  4. Quick Check:

    Clone duplicates data, uses storage [OK]
Hint: Clone copies data; share does not [OK]
Common Mistakes:
  • Thinking clone shares data without copying
  • Believing clone cannot be queried
  • Assuming clone deletes original data
5. How does Snowflake's data sharing ensure data consistency for all consumers without creating copies?
hard
A. By letting all consumers query the same live data in the provider's account
B. By copying data to each consumer and syncing changes regularly
C. By exporting data to external files for each consumer
D. By restricting access to only one consumer at a time

Solution

  1. Step 1: Understand data consistency in sharing

    Snowflake shares data by allowing all consumers to query the same live data in the provider's account.
  2. Step 2: Explain how copies affect consistency

    Copies can become outdated; sharing live data avoids this problem and keeps data consistent.
  3. Step 3: Confirm no copies are made

    Since no copies are created, all consumers see the same up-to-date data instantly.
  4. Final Answer:

    By letting all consumers query the same live data in the provider's account -> Option A
  5. Quick Check:

    Live shared data keeps consistency [OK]
Hint: Shared live data keeps everyone consistent [OK]
Common Mistakes:
  • Thinking data is copied and synced
  • Assuming data is exported to files
  • Believing only one consumer can access at a time
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard