Skip to content

Snowpro Advanced Architect Practice Questions

Prepare for ARA-C01 with more than an answer.

300 questions in the full set20 sample questionsUpdated Aug 11, 2025
Exam fee
$375 USD
Level
Advanced
Valid for
2 years
Domains covered on the exam 4
  1. Accounts and Security25%
  2. Snowflake Architecture30%
  3. Data Engineering25%
  4. Performance Optimization20%
  1. 1

    The SYSTEM$CLUSTERING_INFORMATION function for a large table returns a JSON object where "total_partition_count" is 500,000 and "total_constant_partition_count" is 450,000. What does this output indicate about the table's data and the effectiveness of micro-partition pruning for queries filtered on the clustering key?

    Show answer details

    Correct answer: B

    The total_constant_partition_count represents the number of micro-partitions for which the min/max values of the clustering key columns are the same, meaning they contain no overlapping values with other partitions. The high ratio of constant partitions (450,000 out of 500,000, or 90%) to the total partitions indicates that the table is very well-clustered. This state allows for highly effective micro-partition pruning because when a query filters on the clustering key, Snowflake can eliminate a large number of partitions from the scan.

  2. 2

    A new security administrator is reviewing the RBAC implementation in a Snowflake account. They find that several developers have been granted the ACCOUNTADMIN role to simplify environment setup. An architect has advised that this is a significant security risk and that no individual user should regularly use the ACCOUNTADMIN role. Why is this considered a critical security best practice?

    Show answer details

    Correct answer: B

    The ACCOUNTADMIN role is the most powerful role in Snowflake, encapsulating the SYSADMIN and SECURITYADMIN roles. It has permissions to perform any action in the account, including modifying users, roles, grants, and viewing all data. Granting this role widely violates the principle of least privilege and creates a massive security risk, as a compromised developer account could lead to a full account takeover. Best practice dictates that this role should be used sparingly, only for initial setup, and day-to-day activities should be performed using less privileged roles like SYSADMIN (for object creation) and SECURITYADMIN (for user/role management).

  3. 3

    Case Study: SaaS Provider's Data Isolation Strategy

    A rapidly growing SaaS company provides analytics services to hundreds of customers. They are designing their Snowflake architecture to store and process each customer's data. The company has the following architectural principles and requirements:

    1. Strict Data Isolation: There must be no possibility of one customer accessing another customer's data. This is the highest priority.
    2. Customization: Each customer may require different data retention policies (Time Travel settings) and may have unique IP address whitelists for their employees to access the data.
    3. Cost Allocation: The company must be able to accurately track and bill each customer for their specific storage and compute usage.
    4. Operational Efficiency: The company's internal DevOps team needs to manage all customer environments efficiently, without logging into hundreds of different interfaces.

    Given these requirements, which architectural approach provides the best balance of isolation, customization, cost tracking, and manageability?

    Show answer details

    Correct answer: C

    This architecture perfectly meets all requirements. Using a separate account per customer provides the ultimate level of data isolation (Requirement 1). Within each account, customer-specific settings like Time Travel and Network Policies can be configured independently (Requirement 2). Cost tracking is straightforward, as usage is reported on a per-account basis (Requirement 3). Finally, Snowflake Organizations allow a central administrator to manage all these accounts from a single interface, create new accounts programmatically, and view aggregated usage, ensuring operational efficiency (Requirement 4). The other options fail to provide the required level of isolation and customization.

  4. 4

    A development team wants to create a sandbox environment by taking a snapshot of a 50 TB production database. The process must be completed in under a minute and must not incur any additional storage costs for the duplicated data. The developers in the sandbox should be able to modify data without affecting the production database. Which Snowflake feature is designed for this purpose?

    Show answer details

    Correct answer: B

    Zero-Copy Cloning is the feature that allows for the creation of near-instantaneous copies of databases, schemas, or tables without duplicating the underlying storage. It's a metadata-only operation, which is why it's so fast. The clone is fully independent and writable. Storage costs are only incurred for the delta of changes made to the clone, satisfying all the requirements of speed, cost-efficiency, and isolation for a sandbox environment.

  5. 5

    A company has defined its Role-Based Access Control (RBAC) model using a best-practice approach with functional roles (e.g., FINANCE_ANALYST) and access roles (e.g., DB_FINANCE_R, WH_ANALYTICS_RW).

    graph TD subgraph Users U1[User: Alice] end subgraph Functional Roles FR1[FINANCE_ANALYST] end subgraph Access Roles AR1[DB_FINANCE_R] AR2[WH_ANALYTICS_RW] end subgraph Privileges P1[(SELECT on FIN_DB)] P2[(USAGE, OPERATE on ANALYTICS_WH)] end U1 --> FR1 FR1 --> AR1 FR1 --> AR2 AR1 --> P1 AR2 --> P2

    Based on the diagram and Snowflake RBAC best practices, what is the correct way to structure these grants?

    Show answer details

    Correct answer: B

    The recommended best practice for a scalable and manageable RBAC hierarchy is to grant privileges on objects to access roles. These access roles are then granted to functional roles, which represent business functions. Finally, functional roles are granted to users. This creates a clear separation of concerns, where access roles define 'what' can be accessed and functional roles define 'who' (in terms of business role) gets the access.

  6. 6

    A financial services firm is architecting a multi-tenant data platform on Snowflake. They will host data for several independent hedge funds. A critical requirement is that no hedge fund can ever see another's data, and network traffic for each must be isolated to a specific set of IP addresses. Additionally, the firm wants to manage all accounts centrally under a single master agreement. Which combination of Snowflake features is required to meet these stringent isolation and management requirements?

    Show answer details

    Correct answer: C

    This is the most secure and correct architecture. Using a Snowflake Organization allows for central management and billing. Creating separate accounts for each hedge fund provides the strongest data isolation, as objects and compute are completely segregated. Applying unique Network Policies within each account ensures that network traffic is restricted to the specific IP addresses designated for that fund, fulfilling the network isolation requirement. Row Access Policies in a single account are complex to manage for true multi-tenancy and don't provide compute or network traffic isolation. Applying network policies at the master account level would enforce the same policy for all funds, which contradicts the requirement for fund-specific IP whitelists.

  7. 7

    A data architect is designing a data vault model in Snowflake. To improve query performance for the business vault, they are considering applying constraints to the link and satellite tables. They want the query optimizer to use this metadata, but they do not want Snowflake to expend resources validating the constraints during data loading. What is the correct syntax to achieve this?

    Show answer details

    Correct answer: B

    The RELY property tells the Snowflake optimizer that the data in the table conforms to the constraint, allowing it to use this information for query rewrites and optimizations (like join elimination) without actually validating the data. This meets the requirement of improving performance without incurring validation overhead. NOT ENFORCED is the default and simply declares the constraint without validation or reliance by the optimizer. VALIDATE would force validation, which is what the architect wants to avoid. ENABLE is not a standalone constraint property; it's used with VALIDATE.

  8. 8

    A data engineering team is building an ELT pipeline. A stream object has been created on a raw data table to capture changes (inserts, updates, deletes). A downstream task merges these changes into a dimension table. After a successful merge operation, the team notices that the stream is not empty and contains the same change records. The subsequent task run processes the same records again, causing data duplication issues. What is the most likely cause of this behavior?

    Show answer details

    Correct answer: B

    A stream's offset advances only when the DML statement that consumes it is part of a successful transaction. If the MERGE statement runs as a standalone, auto-committed transaction, the stream consumption is not guaranteed to be part of that same transaction. To ensure the stream is consumed atomically with the MERGE operation, both the SELECT from the stream and the MERGE into the target table must be enclosed within an explicit BEGIN...COMMIT transaction block. This guarantees that if the MERGE is successful, the stream's offset is advanced, and the records are consumed.

  9. 9

    During a performance review of a large data warehouse, an architect analyzes a query profile for a frequently executed report. The profile reveals that a significant portion of the execution time is spent on a 'TableScan' operation, and the 'Partitions scanned' is nearly equal to the 'Partitions total', despite the query having a highly selective WHERE clause on a TIMESTAMP_NTZ column. The table's data is naturally ordered by the timestamp of insertion. What is the most effective and cost-efficient first step to optimize this query?

    Show answer details

    Correct answer: C

    The query profile indicates poor micro-partition pruning, as almost all partitions are being scanned. Since the data is naturally ordered by the timestamp column used in the WHERE clause, defining a clustering key on this column will formalize this organization. Snowflake can then use the micro-partition metadata to prune (skip) the vast majority of partitions that do not contain data relevant to the query's time range. This directly addresses the root cause of the excessive table scan. Increasing warehouse size would only brute-force the scan faster at a higher cost. Search Optimization is best for highly selective point lookups on high-cardinality columns, not range scans on a naturally ordered key. Creating a materialized view is a heavier solution and might not be as effective as fixing the base table's physical layout.

  10. 10

    A healthcare organization must implement a security model where data analysts can query patient data for statistical research but must NEVER see patient names or social security numbers. However, a separate group of 'Auditors' must be able to view the original, unmasked data for compliance checks. The solution must be centrally managed and automatically applied to any user with the ANALYST role. Which Snowflake security features should be combined to meet these requirements? (Select TWO)

    Show answer details

    Correct answer: B, D

    Dynamic Data Masking allows defining a policy that conditionally alters the data returned from a query based on the user's role. A masking policy can be created to show the real value for the AUDITOR role but a masked value (e.g., 'XXX-XX-XXXX') for the ANALYST role.

    RBAC is the foundation for this solution. The masking policy's logic will explicitly check the user's current role (IS_ROLE_IN_SESSION('AUDITOR')) to decide whether to show masked or unmasked data. The distinct roles (ANALYST, AUDITOR) are essential for the policy to function as required.

Create an account to continue.