ARA-C01 Question 161
Select 2Data lake and environmentsA company is modernizing its analytics platform on Snowflake and wants to use cloud object storage as a data lake across dev, test, and prod environments. Raw files from multiple business units land in separate cloud storage paths and must remain in the lake for reprocessing and audit. The architecture team wants to minimize data movement, enforce environment isolation, and let Snowflake query external data before deciding what should be loaded into internal tables. Which TWO design choices best meet these requirements?
- A
Create separate external stages and external tables for each environment, pointing to environment-specific storage paths or buckets, and use storage integrations to access the cloud storage securely.
- B
Load all raw files immediately into permanent Snowflake tables in a shared production database, then use zero-copy cloning to provide dev and test access to the same raw data.
- C
Use secure views on top of internal Snowflake tables instead of external tables, because secure views provide direct querying of files in cloud object storage without metadata definitions.
- D
Define file formats and external tables over the data lake so Snowflake can query files in place, while keeping raw files in object storage for retention and reprocessing.
- E
Use one internal stage for all environments and grant all developer roles read/write access, because stages automatically isolate data by role at query time.
Show answer and explanation
Correct answers: A, D
Explanation
The best answers are 1 and 4 because they align with Snowflake best practices for data lake integration and environment design. Snowflake supports querying data in cloud object storage through external stages, file formats, and external tables, allowing organizations to keep raw data in the lake for retention, replay, and audit while minimizing unnecessary ingestion. For secure access to cloud storage, Snowflake recommends storage integrations rather than hard-coded credentials. From an environment architecture perspective, separate storage locations and Snowflake objects for dev, test, and prod help enforce isolation and reduce operational risk. Zero-copy cloning is highly useful for Snowflake-resident data, but it does not replace external lake design when the requirement is to preserve and query raw files in object storage. Relevant Snowflake documentation includes guidance on external tables, stages and file formats, storage integrations, and environment isolation using role-based access control and separate object design.
- A. Correct.
Correct. Using separate external stages and external tables per environment supports clear dev/test/prod isolation and aligns with common architecture best practices. Pointing each environment to its own bucket or path reduces the risk of accidental cross-environment access. Storage integrations are the recommended Snowflake mechanism for secure, managed access to cloud storage credentials rather than embedding credentials directly in stage definitions.
- B. Incorrect.
Incorrect. This approach increases data movement and collapses environment boundaries by centralizing raw data access in a shared production database. While zero-copy cloning is valuable for duplicating Snowflake databases efficiently, it does not address the requirement to keep raw files in the data lake and query external data before deciding what to load. It also makes prod the source of truth for lower environments, which is often undesirable from a governance perspective.
- C. Incorrect.
Incorrect. Secure views protect the underlying query logic and can limit data exposure, but they do not query files in cloud object storage by themselves. To query external files in place, Snowflake uses stages, file formats, and external tables. This option reflects a common misconception that secure views replace external table functionality.
- D. Correct.
Correct. External tables are specifically designed to allow Snowflake to query data stored in external object storage without first loading it into internal tables. Combined with file formats and stages, they enable schema-on-read access to raw lake data. This satisfies the requirement to minimize data movement, preserve raw files for audit and reprocessing, and evaluate data before ingestion into internal Snowflake storage.
- E. Incorrect.
Incorrect. Internal stages store data inside Snowflake-managed storage, not in the external data lake, so this does not satisfy the requirement to use cloud object storage as the lake. In addition, granting broad read/write access to all developer roles weakens environment isolation. Stages do not automatically isolate data by role unless explicit RBAC controls are designed.