Snowflake certification practice
ADA-C01 Practice Questions
Try 10 free ADA-C01 exam-style questions for Snowflake ADA-C01 certification exam. Check each answer and review the explanation and source references.
- Exam code
- ADA-C01
- Provider
- Snowflake
- Free questions
- 10
- Full set
- 75 questions
- Last update check
The ADA-C01 exam validates your ability to implement and manage core solutions related to this framework. This certification is designed for professionals who design, deploy, and troubleshoot complex environments. On this page, we map the exam syllabus, explain the question formats, and guide your preparation strategy. We have included free ADA-C01 sample questions with answer explanations so you can approach the test with total confidence.
Domain Performance Monitoring and Tuning
Setting the AUTOSUSPEND parameter to 0 or NULL disables the automatic suspension of a virtual warehouse. For a workload driven by dashboards, which frequently issue similar or overlapping queries against the same data, this is beneficial. By keeping the warehouse continuously active, the local data cache on the warehouse's SSDs remains "warm." Subsequent queries can then retrieve data from this fast local cache instead of the slower remote cloud storage, significantly improving query performance and user experience on the dashboards.
A. To save costs on warehouse shutdowns and startups for different queries
Disabling auto-suspend increases costs because the warehouse runs continuously, consuming credits even when idle. It does not save costs.
B. To save costs by running the warehouse as little as possible
This setting achieves the opposite; it ensures the warehouse runs continuously, maximizing its uptime and associated costs, rather than minimizing them.
D. To keep the query result cache warm for good performance on repeated queries
The query result cache is a global service in the cloud services layer, not tied to a specific virtual warehouse's state. It persists for 24 hours regardless of whether the warehouse is active or suspended.
1. Snowflake Documentation: Virtual Warehouse Considerations
Section: Overview of Warehouses > Virtual Warehouse Caching
Content: "When a warehouse is suspended
its data cache is dropped... Consequently
we recommend a sufficiently large auto-suspend period... For warehouses that you want to run continuously
you can set the auto-suspend period to 0 or NULL." This directly links continuous operation (disabling auto-suspend) with maintaining the data cache for performance.
2. Snowflake Documentation: CREATE WAREHOUSE
Section: Parameters > AUTOSUSPEND =
Content: "Specifies the number of seconds of inactivity after which a warehouse is automatically suspended... Setting a value of 0 or a NULL value means the warehouse never suspends." This confirms the technical effect of the setting.
3. Snowflake Documentation: Using Cached Results
Section: Result Cache
Content: "The result cache is a service that is available to all virtual warehouses in your account... The result cache is completely separate from the virtual warehouse cache." This reference clarifies that the query result cache (Option D) is independent of the warehouse's active state.
Domain Data Sharing and Data Marketplace
To enable a role to acquire and use data from the Snowflake Marketplace, two specific account-level privileges are required. First, the IMPORT SHARE privilege must be granted. This allows the role to view all inbound shares from providers, which is how Marketplace listings are made available to an account, and to create databases from those shares. Second, the CREATE DATABASE privilege is required for the role to execute the CREATE DATABASE command itself. The combination of these two grants allows the DPTEAM role to both see the shared data from the Marketplace and create a usable database from it.
A: marketplace in account and create database from share are not valid Snowflake privilege names or syntactically correct grant statements.
B: The Snowflake Marketplace is a feature, not a database object named snowflakemarketplace on which USAGE privileges can be granted.
C: The IMPORTED PRIVILEGES grant is used to give a role access to objects within a database that has already been created from a share, not to create the database itself.
1. Snowflake Documentation. (n.d.). Becoming a Consumer of Listings. Retrieved from https://docs.snowflake.com/en/user-guide/data-marketplace-consumer.
This document explicitly states: "To get data from a listing and create a database from it
a role must have the CREATE DATABASE and IMPORT SHARE privileges."
2. Snowflake Documentation. (n.d.). Access control privileges - Global Privileges. Retrieved from https://docs.snowflake.com/en/user-guide/security-access-control-privileges#global-privileges.
This section lists and describes IMPORT SHARE as a global (account-level) privilege that "Enables viewing all inbound shares (from providers) and creating databases from them."
3. Snowflake Documentation. (n.d.). CREATE DATABASE. Retrieved from https://docs.snowflake.com/en/sql-reference/sql/create-database.
Under the "Required Privileges" section for creating a database from a share
it confirms that a role requires both the CREATE DATABASE and IMPORT SHARE privileges.
Domain Account Management and Data Protection
To comprehensively limit data exfiltration, multiple account-level controls must be enabled. Setting REQUIRESTORAGEINTEGRATIONFORSTAGECREATION = true ensures that users cannot create new external stages with their own credentials that could point to unauthorized locations. Setting REQUIRESTORAGEINTEGRATIONFORSTAGEOPERATION = true mandates that all data movement via stages uses a pre-approved storage integration. Finally, setting PREVENTUNLOADTOINLINEURL = true blocks users from bypassing stage controls by unloading data directly to a presigned URL. Collectively, these three parameters provide a robust defense against common data exfiltration vectors.
A. Setting PREVENTUNLOADTOINLINEURL to false leaves open a significant exfiltration path by allowing users to unload data to arbitrary presigned URLs.
B. Disabling the REQUIRESTORAGEINTEGRATION parameters removes the core security control that forces data movement through approved, administrator-configured cloud storage locations.
C. This configuration disables all relevant security controls, thereby increasing the risk of data exfiltration rather than preventing it.
1. Snowflake Documentation: Account Parameters » REQUIRESTORAGEINTEGRATIONFORSTAGECREATION. This document states
"Specifies whether to block the creation of a new external stage that does not reference a storage integration."
2. Snowflake Documentation: Account Parameters » REQUIRESTORAGEINTEGRATIONFORSTAGEOPERATION. This document explains
"Specifies whether to block a COPY
GET
or PUT command that accesses an external stage but does not reference a storage integration."
3. Snowflake Documentation: Account Parameters » PREVENTUNLOADTOINLINEURL. This document clarifies
"Specifies whether to block a COPY INTO command that unloads data to a presigned URL."
4. Snowflake Documentation: Administration » Security » Network & Private Connectivity » Blocking network traffic from Snowflake. Under the section "Prevent data exfiltration from stages
" this page explicitly recommends setting all three parameters (REQUIRESTORAGEINTEGRATIONFORSTAGECREATION
REQUIRESTORAGEINTEGRATIONFORSTAGEOPERATION
and PREVENTUNLOADTOINLINEURL) to TRUE as a combined strategy.
Domain Snowflake Security and Role-Based Access Control (RBAC)
The SECURITYADMIN role is granted the MANAGE GRANTS privilege by default. This powerful privilege allows the role to modify any grant in the account, including revoking grants made by other roles. The USERADMIN role, which is focused solely on creating and managing users and roles, does not have this global grant management capability. While SECURITYADMIN inherits the privileges of USERADMIN (like creating users/roles), its unique and distinguishing function is the ability to manage system-wide grants.
A. Reset a Snowflake user's password: The USERADMIN role can perform user management tasks, including resetting passwords for users it creates or has ownership over.
C. Create new users: This is a primary function of the USERADMIN role, which has the CREATE USER privilege.
D. Create new roles: This is a primary function of the USERADMIN role, which has the CREATE ROLE privilege.
---
1. Snowflake Documentation: System-Defined Roles
Section: SECURITYADMIN
Content: "Role that can manage any object grant globally... This role is granted the MANAGE GRANTS privilege to allow it to modify any grant
including revoking it."
Section: USERADMIN
Content: "Role that is dedicated to user and role management only. More specifically
this role can create and manage users and roles..."
2. Snowflake Documentation: Access control privileges
Section: Global Privileges
Content: Describes the MANAGE GRANTS privilege: "Enables a role to grant or revoke privileges that have been granted by the privilege grantor (i.e. the role that holds the OWNERSHIP privilege on the object) to other roles." The SECURITYADMIN role holds this privilege by default.
Domain Account Management and Data Protection
Snowflake applies network policies in a hierarchical manner. A policy applied to an individual user is more specific than a policy applied to the entire account. Therefore, if a network policy is set for both the account and a specific user, the user-level network policy will take precedence for that user. All other users in the account who do not have a user-specific policy will continue to be governed by the account-level policy. This allows administrators to set a general security posture for the account while making specific exceptions for individual users.
A. The accountlevel policy is less specific and is therefore overridden by the more specific userlevel policy for that particular user.
C. User-level network policies are a fully supported and documented feature in Snowflake, designed for granular access control.
D. Snowflake has a clearly defined precedence rule to resolve this scenario, so an error is not generated. The system applies the most specific policy.
1. Snowflake Documentation. (2024). Network Policy Precedence. In Managing Security > Network & Private Connectivity > Network Policies. Retrieved from https://docs.snowflake.com/en/user-guide/network-policies#network-policy-precedence.
Reference Details: The section "Network Policy Precedence" explicitly states: "You can apply a network policy to an account or an individual user. When a network policy is applied to both the account and a user
the user-level network policy takes precedence."
Domain Data Loading and Unloading
External tables in Snowflake are designed to directly query data files located in an external cloud storage stage (e.g., Amazon S3, Google Cloud Storage, or Microsoft Azure Blob Storage). This simplifies a data pipeline by eliminating the need for a separate data loading step (e.g., COPY INTO
