ARA-C01 Question 134
Single answerSharing within a cloud regionA data platform team at a retail company must provide near real-time access to curated sales tables to three business units that each have their own Snowflake account. All accounts are in the same cloud provider and region. The provider account must minimize data duplication and ongoing maintenance, and the business units should be able to query the shared data with their own warehouses. Which approach best meets these requirements?
- A
Create a database role with SELECT privileges on the curated tables, grant the role to users in the consumer accounts, and let those users query the provider database directly.
- B
Create a secure data share containing the required database objects, grant USAGE/SELECT as needed to the share, and have each consumer create a database from the share.
- C
Replicate the curated database into each consumer account so each business unit has an independent copy that can be refreshed automatically within the region.
- D
Unload the curated tables to cloud storage in the same region and let each business unit create external tables over the files.
Show answer and explanation
Correct answer: B
Explanation
Within the same cloud region, Snowflake's recommended approach for exposing live data to other Snowflake accounts is Secure Data Sharing. A provider creates a share, grants privileges on supported securable objects such as databases, schemas, and tables/views as appropriate, and then adds one or more consumer accounts. Each consumer creates a read-only database from that share and queries it using compute in the consumer account. This design avoids ETL copies, minimizes storage duplication, and reduces operational maintenance while keeping governance centralized in the provider account. In contrast, replication creates additional copies and is not the primary solution for straightforward same-region data distribution to multiple Snowflake consumers. Likewise, exporting data to object storage and exposing it through external tables is more operationally complex and unnecessary when native sharing is available. These behaviors align with Snowflake documentation and best practices for Secure Data Sharing and data providers/consumers within a region.
- A. Incorrect.
Incorrect. Database roles can be used to manage privileges within an account, but they are not the mechanism for exposing objects directly to separate consumer accounts for cross-account sharing. For data sharing across accounts in the same region, Snowflake uses shares. Consumer users do not query the provider's database directly; instead, the consumer account creates a read-only database from the share.
- B. Correct.
Correct. Secure data sharing is the native Snowflake mechanism for sharing live data across Snowflake accounts in the same cloud region without copying the underlying data. The provider grants privileges on supported objects to a share, adds the consumer accounts to that share, and each consumer creates a database from the share. Consumers use their own virtual warehouses to query the shared data, which satisfies the requirement for low maintenance and no data duplication.
- C. Incorrect.
Incorrect. Replication creates additional copies of data and is intended for use cases such as business continuity, disaster recovery, or regional/cloud distribution rather than the simplest same-region sharing pattern. It increases storage footprint and administrative overhead compared with secure sharing. The scenario specifically asks to minimize duplication and maintenance.
- D. Incorrect.
Incorrect. Unloading to cloud storage and creating external tables would introduce file-management overhead, reduce the simplicity of governance, and no longer provide direct live sharing of Snowflake-managed tables. This approach also duplicates data outside Snowflake and is less suitable than native secure sharing when all accounts are already in the same region.