Snowflake COF-C02 Practice Exams
Last updated on Oct 22,2026- Exam Code: COF-C02
- Exam Name: SnowPro Core Certification Exam
- Certification Provider: Snowflake
- Latest update: Oct 22,2026
A user has 10 files in a stage containing new customer data.
The ingest operation completes with no errors, using the following command:
COPY INTO my__table FROM @my__stage;
The next day the user adds 10 files to the stage so that now the stage contains a mixture of new customer data and updates to the previous data. The user did not remove the 10 original files.
If the user runs the same copy into command what will happen?
- A . All data from all of the files on the stage will be appended to the table
- B . Only data about new customers from the new files will be appended to the table
- C . The operation will fail with the error uncertain files in stage.
- D . All data from only the newly-added files will be appended to the table.
A
Explanation:
When the COPY INTO command is executed in Snowflake, it processes all files present in the specified stage that have not been ingested before or marked as already loaded. Since the user did not remove the original 10 files after the first load, running the same COPY INTO command again will result in all 20 files being processed. This means that the data from the original 10 files will be appended to the table again, along with the data from the new 10 files, potentially leading to duplicate records for the original data set.
References:
Snowflake Documentation on Data Loading
SnowPro® Core Certification Study Guide
Which semi-structured data function interprets an input string as a JSON document that produces a VARIANT value?
- A . PARSE_JSON
- B . CHECK_JSON
- C . JSON_EXTRACT_PATH_TEXT
- D . PARSE_XML
A
Explanation:
The semi-structured data function that interprets an input string as a JSON document and produces a VARIANT value is PARSE_JSON. This function is used to parse a JSON formatted string and return it as a VARIANT data type, which can then be used for further processing within Snowflake3.
Which of the following statements apply to Snowflake in terms of security? (Choose two.)
- A . Snowflake leverages a Role-Based Access Control (RBAC) model.
- B . Snowflake requires a user to configure an IAM user to connect to the database.
- C . All data in Snowflake is encrypted.
- D . Snowflake can run within a user’s own Virtual Private Cloud (VPC).
- E . All data in Snowflake is compressed.
A, C
Explanation:
Snowflake uses a Role-Based Access Control (RBAC) model to manage access to data and resources. Additionally, Snowflake ensures that all data is encrypted, both at rest and in transit, to provide a high level of security for data stored within the platform.
References: [COF-C02] SnowPro Core Certification Exam Study Guide
How does Snowflake recommend defining a clustering key on a high-cardinality column that includes a 15 digit ID numbered column ID_NUMER?
- A . TRUNC (ID_NUMBER, -6)
- B . TRUNC (ID_NUMBER, 5)
- C . ID_NUMBER*100
- D . TO CHAR(ID_NUMBER)
What is the MINIMUM size requirement when creating a Snowpark-optimized virtual warehouse?
- A . X-Small
- B . Small
- C . Medium
- D . Large
B
Explanation:
When creating a Snowpark-optimized virtual warehouse in Snowflake, the minimum size requirement is Small. Snowpark is designed to handle data processing workloads efficiently, and the Small size ensures adequate resources for such tasks.
Virtual Warehouse Sizes:
Snowflake offers different sizes for virtual warehouses, ranging from X-Small to 6X-Large. Each size corresponds to a specific level of compute resources. Minimum Size Requirement for Snowpark:
A Small virtual warehouse is the minimum size required to optimize performance and resource allocation for Snowpark workloads.
This ensures that the warehouse has sufficient capacity to handle data processing and transformation tasks efficiently.
References:
Snowflake Documentation: Virtual Warehouse Sizes
A running virtual warehouse is suspended.
What is the MINIMUM amount of time that the warehouse will incur charges for when it is restarted?
- A . 1 second
- B . 60 seconds
- C . 5 minutes
- D . 60 minutes
B
Explanation:
When a running virtual warehouse in Snowflake is suspended and then restarted, the minimum amount of time it will incur charges for is 60 seconds2.
What features does Snowflake Time Travel enable?
- A . Querying data-related objects that were created within the past 365 days
- B . Restoring data-related objects that have been deleted within the past 90 days
- C . Conducting point-in-time analysis for Bl reporting
- D . Analyzing data usage/manipulation over all periods of time
B, C
Explanation:
Snowflake Time Travel is a powerful feature that allows users to access historical data within a defined period.
It enables two key capabilities:
B. Restoring data-related objects that have been deleted within the past 90 days: Time Travel can be used to restore tables, schemas, and databases that have been accidentally or intentionally deleted within the Time Travel retention period.
C. Conducting point-in-time analysis for BI reporting: It allows users to query historical data as it appeared at a specific point in time within the Time Travel retention period, which is crucial for business intelligence and reporting purposes.
While Time Travel does allow querying of past data, it is limited to the retention period set for the Snowflake account, which is typically 1 day for standard accounts and can be extended up to 90 days for enterprise accounts. It does not enable querying or restoring objects created or deleted beyond the retention period, nor does it provide analysis over all periods of time.
References:
Snowflake Documentation on Time Travel
SnowPro® Core Certification Study Guide
Which file format will keep floating-point numbers from being truncated when data is unloaded?
- A . CSV
- B . JSON
- C . ORC
- D . Parquet
D
Explanation:
The Parquet file format is known for preserving the precision of floating-point numbers when data is unloaded, preventing truncation of the values3.
When used with the UNLOAD command, which parameter specifies the destination of unloaded data?
- A . COPY INTO <table name>
- B . COPY INTO <stage name>
- C . GET <file name>
- D . PUT <file name>
B
Explanation:
In Snowflake, the COPY INTO <stage name> syntax is used with the UNLOAD command to specify the target location where the data should be unloaded, typically a stage or cloud storage (such as Amazon S3 or Azure Blob Storage). This command unloads data from a Snowflake table into files within the specified destination, enabling easy export and external storage of data. GET and PUT commands are used for file management but are not related to unloading table data directly.
What Snowflake recommendation is designed to ensure that staged data is only loaded once"?
- A . Partitioning staged data files
- B . Loading only the most recently-staged data files
- C . Removing data files after loading
- D . Identifying and removing duplicates after each data load
C
Explanation:
Snowflake recommends removing data files from the staging area after they have been loaded into the target table. This practice ensures that the data is only loaded once and prevents accidental reloading of the same data. By removing the files, you eliminate the risk of duplicate data loads.
Stage the Data: Upload the data files to a Snowflake stage (internal or external).
Load the Data: Use the COPY INTO command to load the data from the stage into the Snowflake table.
Remove the Data Files: After successfully loading the data, remove the data files from the stage using the REMOVE command.
References:
Snowflake Documentation: Loading Data into Snowflake
Snowflake Documentation: Staging Data Files
Snowflake Documentation: COPY INTO Command