COF-C03 Question 343
Single answerListingsA data provider wants to monetize a curated sales dataset using Snowflake Marketplace. The provider needs to publish the data so consumers can query it in their own accounts without copying the underlying data, and the provider wants to manage access through a share-based offering. Which action should the provider take to make this possible?
- A
Create a listing that is based on a secure share containing the sales dataset, then publish the listing to the Marketplace.
- B
Create a database role for consumers and grant them SELECT on the provider's tables, then send the role name to customers.
- C
Export the sales dataset to an external stage and attach the staged files directly to the Marketplace listing.
- D
Replicate the sales database into each consumer account and create a listing that points to the replicated copies.
Show answer and explanation
Correct answer: A
Explanation
Listings are the Snowflake construct used to publish and distribute data products, including on Snowflake Marketplace. For provider-managed, no-copy sharing of data to consumer accounts, the listing is typically based on a secure share that contains the relevant database objects. This allows consumers to access shared data in their own Snowflake accounts while the provider retains control of the source data. Common misconceptions include assuming standard role grants can replace cross-account data sharing, or that providers must export files or replicate data into each consumer account. Snowflake best practices for Marketplace emphasize creating a listing backed by a secure share for governed, discoverable, share-based data access.
- A. Correct.
Correct. In Snowflake, listings expose data products to consumers, and for standard data sharing on Marketplace they are backed by a secure share. Consumers access the shared data in their own accounts without copying the underlying provider data. This is the core pattern for publishing data through a listing.
- B. Incorrect.
Incorrect. Database roles can be used for access control within Snowflake, including with shared databases in some contexts, but a provider cannot simply grant a role in their own account directly to external customer accounts as a substitute for a listing. Marketplace distribution requires a listing, and the underlying data access is typically delivered through a secure share.
- C. Incorrect.
Incorrect. A listing is not created by attaching staged files from an external stage as the primary mechanism for Marketplace data sharing. The expected Snowflake-native approach is to publish a listing backed by a secure share so consumers can query shared objects directly without requiring file export workflows.
- D. Incorrect.
Incorrect. Replicating the database into every consumer account is not how Marketplace listings are designed to work. Listings and secure shares let consumers access provider-managed data without the provider creating separate replicated copies for each customer account.