SnowPro Associate: Platform Question 347
Single answer● CloningA data engineering team needs a full copy of the PROD_DB database so they can test a schema migration without affecting production. They want the copy to be created quickly, use minimal additional storage at creation time, and allow developers to make independent changes in the copy. Which Snowflake feature best meets these requirements?
- A
Create a zero-copy clone of PROD_DB for the test environment
- B
Use Time Travel to query PROD_DB at an earlier point in time for testing
- C
Unload PROD_DB data to stage files and reload it into a new database
- D
Create a database replica of PROD_DB and use it for schema migration testing
Show answer and explanation
Correct answer: A
Explanation
Snowflake cloning is designed for exactly this kind of scenario: creating fast, space-efficient copies of databases, schemas, or tables for development, testing, and recovery workflows. Zero-copy cloning leverages shared underlying storage and copy-on-write semantics, so the clone is created almost instantly and only incurs additional storage as changes are made to either the source or the clone. Time Travel is related because it can be used as the source point for a clone from a historical timestamp, but Time Travel alone is not a standalone writable environment. In contrast, unload/reload approaches are more manual and expensive, and replication serves different business continuity purposes. Snowflake documentation on cloning and zero-copy cloning consistently positions cloning as the preferred method for isolated test environments with minimal initial storage overhead.
- A. Correct.
Correct. A zero-copy clone creates a new database object quickly without physically copying all underlying micro-partition data at creation time. It initially uses minimal additional storage and supports independent changes through Snowflake's copy-on-write behavior. This is the standard approach for creating isolated development or test copies of databases, schemas, or tables.
- B. Incorrect.
Incorrect. Time Travel allows users to query, clone, or restore data from a previous point in time, but by itself it does not create an independent test copy for ongoing schema migration work. Querying historical data does not provide a separate writable environment for developers to modify safely.
- C. Incorrect.
Incorrect. Unloading and reloading would create a separate copy, but it is slower, more operationally complex, and consumes more storage and compute than necessary. This approach does not meet the requirement for fast creation with minimal additional storage at the time of creation.
- D. Incorrect.
Incorrect. Database replication is intended for cross-region or cross-account disaster recovery and read-only secondary database use cases, not for routine writable test environments. A replica is not the best fit for developers needing to make independent schema changes during migration testing.