SnowPro Associate: Platform Question 367
Single answer○ Use a private data shareA data provider has created a private data share named SALES_SHARE and added several tables from its PROD_DB database. A consumer account can see the share, but an analyst in the consumer account reports that they still cannot query any shared data. What is the next required step in the consumer account to make the shared objects available for querying?
- A
Create a database from the share, for example: CREATE DATABASE sales_data FROM SHARE provider_account.SALES_SHARE;
- B
Clone the provider's PROD_DB database into the consumer account so the shared tables become local objects.
- C
Create a warehouse owned by the provider account so compute can be shared with the consumer account.
- D
Grant the analyst's role OWNERSHIP on the SALES_SHARE object so it can read the shared tables.
Show answer and explanation
Correct answer: A
Explanation
For a private data share, the provider creates a share, adds database objects to it, and grants the share to a specific Snowflake account. That alone does not make the data directly queryable in the consumer account. The consumer must create a database from the share using CREATE DATABASE ... FROM SHARE. Once that shared database exists, the consumer can grant imported privileges or other appropriate access to roles in its account and query the shared objects using its own warehouse. This reflects Snowflake's documented private sharing model: the provider shares data, while the consumer provisions compute and exposes the shared database to its users.
- A. Correct.
Correct. In a private data sharing workflow, the provider creates the share and grants it to a specific consumer account. The consumer must then create a database from that share before users can query the shared objects. After the shared database is created, the consumer can grant privileges on that database to its own roles and query the shared data using its own virtual warehouses.
- B. Incorrect.
Incorrect. Consumers do not clone the provider's database to access shared data. Cloning creates a copy-like object within the same account and relies on Snowflake cloning features, not cross-account data sharing. Private sharing exposes objects through a share, and the consumer accesses them by creating a database from that share.
- C. Incorrect.
Incorrect. Data sharing does not share compute resources. The consumer uses its own virtual warehouse to query shared data. A common misconception is that because storage is shared, compute must also be shared, but Snowflake separates storage and compute. The provider only shares the data; the consumer pays for and uses its own compute.
- D. Incorrect.
Incorrect. The consumer does not receive OWNERSHIP on the share object. Shares are managed by the provider account, and the consumer cannot take ownership of them. Instead, the consumer creates a database from the share and then grants appropriate privileges on that database to local roles.