ARA-C01 Question 24
Single answerFeatures/capabilities that can be leveraged across accountsA global enterprise uses separate Snowflake accounts for each business unit. The central data platform team wants to distribute a curated product catalog to all business units without copying the data into each consumer account. The business units should be able to query the shared data using their own virtual warehouses, and the provider team wants to manage access centrally from the source account. Which Snowflake capability best meets these requirements?
- A
Create a secure data share from the provider account and grant the consumer accounts access to a database created from that share
- B
Replicate the product catalog database into each business unit account and allow consumers to query the replicated copies
- C
Create database roles in the provider account and assign those roles directly to users in the consumer accounts
- D
Unload the product catalog to external cloud storage and let each business unit create an external table over the files
Show answer and explanation
Correct answer: A
Explanation
The best answer is Secure Data Sharing. This capability allows a provider account to share selected database objects with one or more consumer accounts without physically copying the data. Consumers access the shared data through a database created from the share and run queries using compute resources in their own accounts. This model is commonly used for internal cross-account data distribution and supports centralized control by the data provider. In contrast, replication is intended for copying databases or failover groups for business continuity and related use cases, not for no-copy data distribution. External tables over unloaded files require data export and are less efficient and less governed for this scenario. This aligns with Snowflake documentation and architecture best practices for cross-account data access: use Secure Data Sharing when you need live, read-only access to provider-managed data across accounts.
- A. Correct.
Correct. Secure Data Sharing is designed specifically for sharing live data across Snowflake accounts without copying the underlying data. The provider manages access centrally in the source account, and each consumer creates a read-only database from the share. Consumers use their own virtual warehouses to query the shared objects, which aligns exactly with the scenario requirements.
- B. Incorrect.
Incorrect. Database replication can copy objects and data across accounts or regions for availability and disaster recovery use cases, but it does not satisfy the requirement to avoid copying data into each consumer account. Replication creates separate copies that must be managed and refreshed, so it is not the best fit for centralized, no-copy distribution to many internal consumers.
- C. Incorrect.
Incorrect. Database roles can be granted to account roles within the same account, and shares can include privileges on objects, but database roles are not assigned directly to users in other accounts as a cross-account access mechanism. The cross-account pattern for exposing data is Secure Data Sharing, not direct cross-account role assignment.
- D. Incorrect.
Incorrect. Unloading to cloud storage and exposing files through external tables introduces data movement, storage management, file lifecycle concerns, and additional complexity. It also does not provide the same live, centrally managed, no-copy sharing model as Secure Data Sharing. This is a plausible workaround, but it is not the Snowflake-native capability that best meets the stated requirements.